2017-01-30 2 views
1

私はPouchDBを使ってデータをローカルDBに格納し、次にリモートCouchDBに格納します。これからPouchDBはChromeのlocalDBに対してindexedDBのみを使用しましたが、現在はWebSQL(v.56)を使用しています。 PouchDBがindexedDBを期待通りに使用するChrome CanaryやFirefoxでこの問題に遭遇することはありません。PouchDB:クロムのwebSQLの代わりにindexedDBを使用します(これ以上は働かない)

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

新しいPouchDB( 'myDB'、{adapter: 'idb'}); 'のように手動でアダプタを設定しようとしましたか? [adapters doc](https://pouchdb.com/adapters.html)を参照してください。 – Phonolog

+0

新しいOe(pouchdb-6.1.1.min.js:8)で 'Uncaught Error:無効なアダプタ:idb '(Chrome 56のみ)を返します。 – hhh

答えて

0

試してください:あなたのサイトのコンソールで

PouchDB.adapters 

は私がのIndexedDBまたはwebSQLが使用されているかどうかを確認するために、このコードを使用します。利用可能なすべてのアダプタを持つオブジェクトが必要です。

また、コンソールにPouchDB.preferredAdaptersと入力すると、コンソールに表示されているかどうかを確認できます。それが 'idb'として現れればそれは使用可能です(それはすべきです)、それではnew PouchDB('name', {adapter: 'idb'});を使用できるはずです。

+0

'idb'は利用できないようです。 'PouchDB.adapters'は' websql'、 'http'、' https'を出力します。 'PouchDB.preferredAdapters'は' websql'を出力します。 – hhh

+0

thatsとても奇妙です。クロームを最新の推奨バージョンに再インストールしてみてください – thomagron

+0

ああ私の間違いです!私は2つの問題を混在させました...実際には 'PouchDB.adapters'はChromeのidbを表示します。私はChrome iOSで(idbが利用できないため)... chrome 56で新しいDBを作成すると、このメッセージが表示されます。「PouchDBはWebSQLで既に開かれていたため、データ損失を避けるためmyDBをWebSQLにダウングレードしています。 idbがエラーを出したiOS上でもコードが使われるので、 ''新しいPouchDB( 'name'、{adapter: 'idb'}); 'を使うことはできません。 – hhh

関連する問題