如何在Cordova中使用sqlite解决问题?

时间:2018-12-24 19:38:10

标签: sqlite cordova vue.js

我正在将电子项目移到科尔多瓦。为了使用sqlite,我使用NPM插件sqlite-sync。在电子中,它工作完美。移植源代码并安装依赖项后,启动项目时出现错误。

ERROR in ./node_modules/sql.js/js/sql.js
Module not found: Error: Can't resolve 'fs' in 'D:\PROJECTS\PRODUCTIONS\MOBILE\\node_modules\sql.js\js'
 @ ./node_modules/sql.js/js/sql.js 3:1275-1288 3:170484-170497
 @ ./node_modules/sqlite-sync/sqlite.js
 @ ./src/store/index.js
 @ ./src/main.js
 @ multi ./build/dev-client babel-polyfill ./src/main.js

如何解决问题?胜利平台

1 个答案:

答案 0 :(得分:0)

Electron和Cordova并不相同,Electron实现了NodeJS API,而Cordova使用了自己的API。如果要在Cordova中使用SqlLite,则必须剔除使用NodeJS的部分(如果看到“ require”一词,则可能是节点导入-实际上,使用ES6导入可以使自己的生活更轻松WebPack或Browserify,以便您知道要提取的代码)。您可能可以在现代构建系统中使用很多node_modules,但是从Electron迁移到Cordova将会花费很多工作。如果要使用SQLite,SQLite Cordova Plugin可能是最简单的方法,但它看起来与NodeJs Sqlite API有所不同。