在 Electron 中使用 NodeJS 插件

Using NodeJS plugins in Electron

我是 Electron (Atom-shell) 的新手,我正在尝试将 NodeJS 插件加载到我正在构建的应用程序中,但我不知道如何加载。文档对此并不清楚。

例如,我想在我的应用程序中使用 sqlite3 插件,我使用了 npm install sqlite3,它已成功安装。但是当我尝试调用它时应用程序抛出错误 var sqlite = require('sqlite3')。还有其他我不知道的步骤吗?

谢谢。

要正确安装 npm 模块,您应该进入电子应用程序的文件夹并通过 npm 安装模块。

npm install --save sqlite3

标志 --save 很重要,因为 npm 会在您的应用程序中安装模块。

之后 require 应该工作。

对于纯 JS(即非本机)模块,您需要以下内容:

  1. 将模块列在您的 package.json 依赖项中
  2. 让电子知道在哪里可以找到模块(例如export NODE_PATH=/PATH/TO/node_module

第一个要求很明显,第二个要求源于 this issue

对于使用 C++ 绑定的本机节点模块(例如 sqlite3),您需要针对 electron headers 构建它们才能工作。根据 electron docs,最简单的方法是:

npm install --save-dev electron-rebuild

# Every time you run npm install, run this
./node_modules/.bin/electron-rebuild