electron项目中使用sqlite3的编译问题(windows)

在electron项目中,无论是做临时存储还是单机业务处理,sqlite3都是不二之选,轻量的SQL数据库。但是在windows下进行开发的时候,编译总是一个头疼的问题。网上的方法有N种,都试了无数次还是没有效果,今天给大家分享一个成功的方法。

1.准备

首先python2.7,vs2015这些是必装的,很多nodejs使用的c++包都需要

2.工程的package.json中scripts命令添加

"postinstall": "install-app-deps"

“postinstall”是npm的一个钩子,它会在你执行npm install安装完成后执行,”install-app-deps”是electron的命令,会利用”electron-builder”重新构建绑定了当下sqlite3版本的electron

3.安装sqlite3

$ npm i sqlite3 -S

安装之后他会自动进行编译 node-pre-gyp install –fallback-to-build

  • 先编译出对应nodejs版本的sqlite3版本,例如:{root}\node_modules\sqlite3\lib\binding\node-v57-win32-x64\node_sqlite3.node

  • 再自动执行”install-app-deps”,编译出对应electron版本的sqlite3版本,例如:{root}\node_modules\sqlite3\lib\binding\electron-v1.8-win32-x64\node_sqlite3.node。(如果因为某个原因没有执行”install-app-deps”,那么在这个时候手动执行也是可以的)

  • PS:最后一步操作如果失败,很大原因是因为被墙了,挂代理或者用cnpm装sqlite3也是可行的

接下来就可以直接在js中引入sqlite3了!

展开阅读全文

没有更多推荐了,返回首页