cnpm install electron-rebuild --save-dev
https://www.electronjs.org/docs/tutorial/using-native-node-modules
为 Electron 安装并重新编译模块
您可以像其他 Node 项目一样安装模块,然后用 electron-rebuild 包重建这些模块以适配 Electron 。 这个包可以自动识别当前 Electron 版本,为你的应用自动完成下载 headers、重新编译原生模块等步骤。
例如,想要通过命令行下载 electron-rebuild 并重新编译:
npm install --save-dev electron-rebuild
# 每次运行"npm install"后,也运行这条命令
./node_modules/.bin/electron-rebuild
# 在windows下如果上述命令遇到了问题,尝试这个:
.\node_modules\.bin\electron-rebuild.cmd
cnpm install sqlite3
运行出现问题:electron与node_sqlite3版本不一致
Uncaught Error: Cannot find module ‘E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\node_modules\_sqlite3@4.2.0@sqlite3\lib\binding\electron-v9.0-win32-x64\node_sqlite3.node‘
Require stack:
- E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\node_modules\_sqlite3@4.2.0@sqlite3\lib\sqlite3-binding.js
- E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\node_modules\_sqlite3@4.2.0@sqlite3\lib\sqlite3.js
- E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\app\database.js
- E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\app\renderer.js
- E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\app\index.html
at Module._resolveFilename (internal/modules/cjs/loader.js:797)
at Function../lib/common/reset-search-paths.ts.Module._resolveFilename (reset-search-paths.ts:41)
at Module._load (internal/modules/cjs/loader.js:690)
at Function.Module._load (electron/js2c/asar.js:738)
at Module.require (internal/modules/cjs/loader.js:852)
at require (internal/modules/cjs/helpers.js:74)
at Object.<anonymous> (E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\node_modules\_sqlite3@4.2.0@sqlite3\lib\sqlite3-binding.js:4)
at Object.<anonymous> (E:\Kzone\CodeLib\electron\electron-action\Clipmaster-charp12-SQLite\node_modules\_sqlite3@4.2.0@sqlite3\lib\sqlite3-binding.js:7)
at Module._compile (internal/modules/cjs/loader.js:967)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1004)
npm install sqlite3 --build-from-source --runtime=electron --target=9.0.3 --dist-url=https://atom.io/download/electron
12.《Electron 跨平台开发实战》- chapter12
原文:https://www.cnblogs.com/easy5weikai/p/13163881.html