2017-01-30 42 views
1

我使用PouchDB將數據存儲在localDB中,然後存儲在遠程CouchDB中。從現在開始,PouchDB僅在Chrome中使用localDB的indexedDB,但現在它使用webSQL(在第56節中)。我沒有遇到Chrome Canary或Firefox的問題,PouchDB按預期使用indexedDB。PouchDB:在chrome中使用indexedDB而不是webSQL(不再工作)

我用這個代碼,看看如果使用IndexedDB的或的WebSQL:

var pouch = new PouchDB('myDB'); 
console.log(pouch.adapter); 
+0

您是否嘗試過像'new PouchDB('myDB',{adapter:'idb'})手動設置適配器;'?請參閱[適配器文檔](https://pouchdb.com/adapters.html)。 – Phonolog

+0

它在新的Oe(pouchdb-6.1.1.min.js:8)'(僅在Chrome 56中)返回'未捕獲錯誤:無效適配器:idb '。 – hhh

回答

0

嘗試:

PouchDB.adapters 
在您的網站的控制檯

。它應該提供一個包含所有可用適配器的對象。

另外,您可以在控制檯中鍵入PouchDB.preferredAdapters以查看它是否顯示在那裏。如果它顯示爲'idb',它可以使用(它應該),那麼你應該只能使用new PouchDB('name', {adapter: 'idb'});

+0

似乎'idb'不可用。 'PouchDB.adapters'輸出'websql','http'和'https'。 'PouchDB.preferredAdapters'輸出'websql'。 – hhh

+0

多數民衆贊成在很奇怪。嘗試重新安裝鉻到最新的推薦版本 – thomagron

+0

哦,我的錯誤!我混淆了兩個問題......實際上'PouchDB.adapters'在Chrome中顯示idb。我觀察到,在Chrome iOS上(因爲idb不可用)...在chrome 56上創建一個新的DB給了我這個信息:'PouchDB將「myDB」降級爲WebSQL以避免數據丟失,因爲它已經用WebSQL打開。 '我不能使用新的PouchDB('name',{adapter:'idb'});'因爲代碼也在iOS中使用,idb會給出錯誤。 – hhh

相關問題