【背景】 electron 项目使用sqlite3
运行报错【Cannot find module '/node_modules/sqlite3/lib/binding/electron-v11.0-darwin-x64/node_sqlite3.node'】
解决办法,摸索一下
- 删除node_modules文件夹,重新isntall 看看行不行? 居然行!!!!!
但是为什么会有这个bug ??todo
----- 20220616更新-----
问题解答
在npm install 之后,我们根据报错的信息对应的路径,一步一步的,去项目的目录下面,找对应的文件。
- 根据这个目录
/node_modules/sqlite3/lib/binding/electron-v11.0-darwin-x64/node_sqlite3.node
依次找,我们会发现,binding文件夹下面的目录不是electron-v11.0-darwin-x64,是electron-v14.2-win32-x64这个,或其他版本号的目录。
这是因为,我们安装sqlite3的时候,所用的node版本号,和安装electron时候的node版本号不一样。
所以在安装的时候一定要确保不要更换node的版本号,所以删除node_modules可以解决问题。
关于其它安装sqlite3出错的问题,可以参考
还有就是如果你发现一个版本安装不上,可以试一下另一个版本,比如4.2.0安装总是报错 403 啥的,改成npm i sqlite3@5 安装就可以了