节点模块不适用于 Electron App

Node module not working with Electron App

我正在尝试制作一个使用 npm 中的节点蓝牙模块的应用程序。但我收到以下错误:

App threw an error during load
Error: The module '/home/pi/AlucentOs/node_modules/node- 
bluetooth/build/Release/BluetoothSerialPort.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 57. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
at process.module.(anonymous function) [as dlopen] 
(ELECTRON_ASAR.js:166:20)
at Object.Module._extensions..node (internal/modules/cjs/loader.js:740:18)
at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:166:20)
at Module.load (internal/modules/cjs/loader.js:620:32)
at tryModuleLoad (internal/modules/cjs/loader.js:559:12)
at Function.Module._load (internal/modules/cjs/loader.js:551:3)
at Module.require (internal/modules/cjs/loader.js:658:17)
at require (internal/modules/cjs/helpers.js:20:18)
at bindings (/home/pi/AlucentOs/node_modules/bindings/bindings.js:76:44)
at Object.<anonymous> (/home/pi/AlucentOs/node_modules/node- 
bluetooth/index.js:3:48)

我已经尝试删除 node_modules 文件,然后重新安装所有内容,但它不起作用。 我是运行下面一行:

electron .

package.json:

{
  "name": "alucentos",
  "version": "1.0.0",
  "description": "AlucentX Operating System",
  "main": "index.js",
  "scripts": {
  "start": "electron .",
 },
 "author": "meddahAbdallah",
 "license": "ISC",
 "devDependencies": {
 "electron": "^4.1.2",
 "node-bluetooth": "^1.2.5"
 },
 "dependencies": {
 "node-bluetooth": "^1.2.5"
 }
}

您需要 Node.js v10 才能 运行 节点蓝牙版本 1.2.5

解决方案:

  • 如果你想安装 Node.js v10 运行 node-bluetooth version 1.2.5 Node Homepage

  • 安装与Node.js v8 兼容的其他版本的node-bluetooth,您可以找到所有版本的node-bluetooth here,以及依赖项和安装说明

有帮助link: Node module versions