Error: Can't walk dependency graph: ENOENT: no such file or directory (process)
Error: Can't walk dependency graph: ENOENT: no such file or directory (process)
我正在使用 browserify v17.0.0 以便在 Web 项目中使用 node.js 模块。直到今天,当我尝试按如下方式转换 src 文件时,它一直运行良好:
call browserify web-src.js -o web.js
Error: Can't walk dependency graph: ENOENT: no such file or directory, lstat '${home_dir}\process'
required by ${home_dir}\node_modules\mysql2\lib\pool.js
(很奇怪,因为我没有更改 browserify 的版本或任何代码!)。
进程模块存在于 node_modules 中,我尝试清除 npm 缓存并使用 npm install
完全重新安装
如果我禁用所有使用上述 mysql2 库的导入,那么我可以使用上述命令成功编译 web.js。但是,当我尝试使用 express.js 网络服务器提供此文件时,出现错误:
Uncaught TypeError: Cannot read properties of undefined (reading 'split')
at Object.<anonymous> (web.js:122518)
at Object.<anonymous> (web.js:122527)
at Object.780../lib/telegram (web.js:122527)
at o (web.js:1)
at web.js:1
at Object.<anonymous> (web.js:171670)
at Object.<anonymous> (web.js:171981)
at Object.944.../database/database-functions (web.js:171981)
at o (web.js:1)
at web.js:1
在编译后的代码中指的是下面一行:
const majorVersion = parseInt(process.versions.node.split('.')[0]
好的 - 我不应该尝试在浏览器上下文中使用 node.js 进程 API。
原来有代码更改,使用进程 API 导入模块,这就是错误的表现方式。
奇怪的是,当导入 mysql2 包时,这阻止了编译。
删除后,web.js 编译但电报 API 包导致运行时错误也见于上面
我正在使用 browserify v17.0.0 以便在 Web 项目中使用 node.js 模块。直到今天,当我尝试按如下方式转换 src 文件时,它一直运行良好:
call browserify web-src.js -o web.js
Error: Can't walk dependency graph: ENOENT: no such file or directory, lstat '${home_dir}\process'
required by ${home_dir}\node_modules\mysql2\lib\pool.js
(很奇怪,因为我没有更改 browserify 的版本或任何代码!)。
进程模块存在于 node_modules 中,我尝试清除 npm 缓存并使用 npm install
如果我禁用所有使用上述 mysql2 库的导入,那么我可以使用上述命令成功编译 web.js。但是,当我尝试使用 express.js 网络服务器提供此文件时,出现错误:
Uncaught TypeError: Cannot read properties of undefined (reading 'split')
at Object.<anonymous> (web.js:122518)
at Object.<anonymous> (web.js:122527)
at Object.780../lib/telegram (web.js:122527)
at o (web.js:1)
at web.js:1
at Object.<anonymous> (web.js:171670)
at Object.<anonymous> (web.js:171981)
at Object.944.../database/database-functions (web.js:171981)
at o (web.js:1)
at web.js:1
在编译后的代码中指的是下面一行:
const majorVersion = parseInt(process.versions.node.split('.')[0]
好的 - 我不应该尝试在浏览器上下文中使用 node.js 进程 API。
原来有代码更改,使用进程 API 导入模块,这就是错误的表现方式。
奇怪的是,当导入 mysql2 包时,这阻止了编译。 删除后,web.js 编译但电报 API 包导致运行时错误也见于上面