我正在使用新的Node.js Tools for Visual Studio并包含sqlite3 npm module。当我呼叫require('sqlite3')
时,它会抛出错误:
Error: Cannot find module './binding\Debug\node-v11-win32-ia32\node_sqlite3.node'
奇怪的是,当我忽略错误并继续运行代码时,一切正常......直到函数I返回;然后服务器崩溃了。
还有其他人有这个问题吗?我怀疑它与./binding
部分有关,但在找出原因方面不知道从哪里开始。
答案 0 :(得分:48)
使用它: -
npm install sqlite3 --build-from-source
答案 1 :(得分:22)
这对我有用:https://www.npmjs.com/package/sqlite3
npm install https://github.com/mapbox/node-sqlite3/tarball/master
答案 2 :(得分:1)
来自:https://github.com/mapbox/node-sqlite3/wiki/Building-On-Windows
npm install sqlite
npm install
node-gyp configure build
答案 3 :(得分:0)
这似乎是sqlite3
npm包本身的问题。存在lib\binding\Release\
文件夹,但不存在lib\binding\Debug\
文件夹。我刚创建了Release
文件夹的副本,命名为Debug
,一切都很好。
答案 4 :(得分:0)
我遇到了问题,我的node
版本是v10.16.3
全局安装的sqlite3在加载require('sqlite3')
已通过在项目中安装本地sqlite3解决了该问题。
$ npm install sqlite3
没有-g选项的注释对我有用。
答案 5 :(得分:0)
如果以上内容对任何人都不起作用,以下是对我有用的方法:
sudo apt install node-sqlite3
(我使用 Ubuntu 和 Vscode 作为编辑器)。似乎安装这个 node-sqlite3 模块是被识别的。
答案 6 :(得分:-1)
要跳过搜索预编译的二进制文件,并从源强制构建,请使用
npm install --build-from-source