如何让SQLite与Angular 4+,Electron和NodeJS一起工作

我试图build立一个小桌面应用程序使用:

  • angular4+
  • 的NodeJS
  • 电子
  • sqlite3的

NodeJS将用于扫描本地用户hdd并将特定文件插入到SQLite3数据库中。

我查了几十个文档和build议。 他们大多build议使用NodeJS express框架,并在Angular 4+ – > Express – > SQLite3之间build立一个层。

我想避免使用快速框架,因为它将是桌面应用程序,根本不需要。

我尝试了什么,我做了什么:

我安装了:

"sqlite3": "^3.1.9", "node-pre-gyp": "^0.6.36", 

作为我的项目中的依赖项。

比我读过,如果你想使用本地nodejs库你应该运行电子重build。 所以我也安装了电子重build:

 "electron-rebuild": "^1.6.0" 

作为devDependencies并使用以下命令运行它:

 ./node_modules/.bin/electron-rebuild 

重buildsqlite3成功完成。

比我运行电子应用程序,我得到以下错误:

 /~/node-pre-gyp/lib/node-pre-gyp.js Module build failed: Error: ENOENT: no such file or directory, open '/home/haris/development/walter/angular-electron-starter/node_modules/node-pre-gyp/lib/node-pre-gyp.js' at Error (native) @ ./~/sqlite3/lib/sqlite3.js 1:13-36 @ ./src/app/home/home.component.ts @ ./src/app/home/index.ts @ ./src/app/app.module.ts @ ./src/app/index.ts @ ./src/main.browser.ts @ multi (webpack)-dev-server/client?http://localhost:3000 ./src/main.browser.ts 

我卡在这里 我尝试了更多的东西,比如:

 1. Removing node_modules 2. npm install --build-from-source 

但是我仍然得到相同的错误。

任何build议或帮助将非常感激。

我刚刚发布了一个示例项目,演示了如何使用Electron,Angular4和Sqlite3构build桌面应用程序。 你可以在这里克隆它

注意我已经安装了全局的node-gyp。

希望能帮助到你