[英]what's the difference between cordova-plugin-sqlite-2 and cordova-sqlite-storage?
在本教程中使用 SQLite 和 PouchDB ,使用的 cordova 插件是cordova-plugin-sqlite-2
。 同时在另一个使用 SQLite in Ionic 的教程中,使用的 cordova 插件是cordova-sqlite-storage
。
这两个插件之间实际上有什么区别?
是否可以将cordova-sqlite-storage
与 PouchDB 一起使用而不是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
一起使用,并声明;
PouchDB 适配器使用原生 Cordova SQLite 作为其后备存储。 它适用于以下任一 Cordova 插件:
- Cordova-sqlite-存储
- 科尔多瓦-插件-sqlite-2
- 科尔多瓦-插件-websql
当我切换到使用cordova-sqlite-storage
时,为什么会出现该错误?
确保只有一个插件。
我得到的错误似乎是由package.json
中存在的两个插件引起的。 I thought I've removed it by using the ionic cordova plugin rm cordova-plugin-sqlite-2
but when I removed and added the platform again, and run ionic cordova run android -l
, the error still showed up and inside the package. json,显然cordova-plugin-sqlite-2
仍然可用。
检查config.xml
内部并将其从那里删除,删除并添加平台,错误消失了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.