如何使 SQLite 与 Angular 4+、Electron 和 NodeJS 一起工作
How to make SQLite to work with Angular 4+, Electron and NodeJS
我正在尝试使用以下方法构建一个小型桌面应用程序:
- Angular 4+
- NodeJS
- 电子
- SQLite3
NodeJS 将用于扫描本地用户硬盘并将找到的特定文件插入到 SQLite3 数据库中。
我检查了几十个文档和建议。他们中的大多数建议使用 NodeJS express 框架并在 Angular 4+ -> Express -> SQLite3 之间创建层。
我想避免使用 express 框架,因为它将成为桌面应用程序,根本不需要它。
我尝试过的和所做的:
我安装了:
"sqlite3": "^3.1.9",
"node-pre-gyp": "^0.6.36",
作为我项目中的依赖项。
如果你想使用本机 nodejs 库,你应该 运行 电子重建。所以我也安装了电子重建:
"electron-rebuild": "^1.6.0"
作为 devDependencies 和 运行 它使用以下命令:
./node_modules/.bin/electron-rebuild
重建sqlite3成功完成。
比我 运行 电子应用程序我得到以下错误:
/~/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
但我仍然遇到同样的错误。
任何建议或帮助将不胜感激。
我刚刚发布了一个示例项目,展示了如何使用 Electron、Angular4 和 Sqlite3 构建桌面应用程序。你可以克隆它 here
备注
我已经全局安装了 node-gyp。
希望对您有所帮助
它对其他人可能有什么价值。我已按照@leota 的步骤进行操作(非常感谢,顺便说一句!)。
我的问题是我有 Python 2.7 x64 版本,我认为 它需要 32 位版本.. 当我安装标准版本时,我的重建过程工作正常!
我正在尝试使用以下方法构建一个小型桌面应用程序:
- Angular 4+
- NodeJS
- 电子
- SQLite3
NodeJS 将用于扫描本地用户硬盘并将找到的特定文件插入到 SQLite3 数据库中。
我检查了几十个文档和建议。他们中的大多数建议使用 NodeJS express 框架并在 Angular 4+ -> Express -> SQLite3 之间创建层。
我想避免使用 express 框架,因为它将成为桌面应用程序,根本不需要它。
我尝试过的和所做的:
我安装了:
"sqlite3": "^3.1.9",
"node-pre-gyp": "^0.6.36",
作为我项目中的依赖项。
如果你想使用本机 nodejs 库,你应该 运行 电子重建。所以我也安装了电子重建:
"electron-rebuild": "^1.6.0"
作为 devDependencies 和 运行 它使用以下命令:
./node_modules/.bin/electron-rebuild
重建sqlite3成功完成。
比我 运行 电子应用程序我得到以下错误:
/~/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
但我仍然遇到同样的错误。
任何建议或帮助将不胜感激。
我刚刚发布了一个示例项目,展示了如何使用 Electron、Angular4 和 Sqlite3 构建桌面应用程序。你可以克隆它 here
备注 我已经全局安装了 node-gyp。
希望对您有所帮助
它对其他人可能有什么价值。我已按照@leota 的步骤进行操作(非常感谢,顺便说一句!)。
我的问题是我有 Python 2.7 x64 版本,我认为 它需要 32 位版本.. 当我安装标准版本时,我的重建过程工作正常!