【发布时间】:2022-01-21 23:50:06
【问题描述】:
在这个tutorial to use SQLite with PouchDB 中,使用的cordova 插件是cordova-plugin-sqlite-2。同时在another tutorial to use SQLite in Ionic,使用的cordova插件是cordova-sqlite-storage。
这两个插件实际上有什么区别?
是否可以在 PouchDB 中使用 cordova-sqlite-storage 而不是 cordova-plugin-sqlite-2 ?
当我想使用 Ionic 5 Native SQLite 插件(作为第二个教程)时,是否可以使用 cordova-sqlite-plugin-2?
更新:
我尝试创建一个使用 PouchDB 的应用程序,并安装了 cordova-sqlite-storage 插件而不是 cordova-plugin-sqlite-2,因为我想同时使用 Ionic Native SQLite。当应用程序启动时,我收到如下错误:
ERROR Error: Uncaught (in promise): {"status":500,"name":"web_sql_went_bad","message":"unknown","reason":"Invalid database handle"}
at resolvePromise (zone-evergreen.js:797:1)
at resolvePromise (zone-evergreen.js:754:1)
at zone-evergreen.js:858:1
at ZoneDelegate.invokeTask (zone-evergreen.js:391:1)
at Object.onInvokeTask (core.js:34182:1)
at ZoneDelegate.invokeTask (zone-evergreen.js:390:1)
at Zone.runTask (zone-evergreen.js:168:1)
我还在我的项目中安装了pouchdb-adapter-cordova-sqlite。根据pouchdb-adapter-cordova-sqlite,它应该与cordova-sqlite-storage一起工作并声明;
使用原生 Cordova SQLite 作为其后备存储的 PouchDB 适配器。它 适用于以下任一 Cordova 插件:
- Cordova-sqlite-storage
- cordova-plugin-sqlite-2
- cordova-plugin-websql
为什么当我切换到使用cordova-sqlite-storage 时会出现该错误?
【问题讨论】:
标签: sqlite ionic-framework cordova-plugins pouchdb ionic-native