如何在电子中安装sqlite3?

时间:2019-09-15 05:46:17

标签: node.js sqlite electron

这就是我所做的,我在项目目录中安装了electronic和sqlite3

npm install electron --save-dev
npm install sqlite3

但是当我尝试使用npm start运行它时,会给我错误

var sqlite3 = require('sqlite3').verbose();

该行在我的main.js内部,在该行中初始化电子设备等,并且在没有此行的情况下也可以正常工作。 这是我得到的错误。

Uncaught Exception:
Error: Cannot find module '/home/touseef/Desktop/Projects/pos/node_modules/sqlite3/lib/binding/electron-v6.0-linux-x64/node_sqlite3.node'
Require stack:
- /home/touseef/Desktop/Projects/pos/node_modules/sqlite3/lib/sqlite3.js
- /home/touseef/Desktop/Projects/pos/main.js
- /home/touseef/Desktop/Projects/pos/node_modules/electron/dist/resources/default_app.asar/main.js
- 
    at Module._resolveFilename (internal/modules/cjs/loader.js:627:15)
    at Function.Module._resolveFilename (/home/touseef/Desktop/Projects/pos/node_modules/electron/dist/resources/electron.asar/common/reset-search-paths.js:41:16)
    at Function.Module._load (internal/modules/cjs/loader.js:531:27)
    at Module.require (internal/modules/cjs/loader.js:685:19)
    at require (internal/modules/cjs/helpers.js:16:16)
    at Object.<anonymous> (/home/touseef/Desktop/Projects/pos/node_modules/sqlite3/lib/sqlite3.js:4:15)
    at Module._compile (internal/modules/cjs/loader.js:786:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:798:10)
    at Module.load (internal/modules/cjs/loader.js:645:32)
    at Function.Module._load (internal/modules/cjs/loader.js:560:12)

我的节点版本是10.16.3,我正在运行Ubuntu。

1 个答案:

答案 0 :(得分:0)

也有这个问题。我不得不重建sqlite3。

已安装electron-rebuild,并添加了"scripts": { "rebuild": "electron-rebuild -f -w sqlite3" },

到我的package.json。然后执行npm run rebuild,并使其重建。为我摆脱了这个错误。