LDr*_*rof 6 node.js reactjs webpack
Failed to compile.
./node_modules/vm2/lib/resolver-compat.js
Module not found: Can't resolve 'async_hooks' in \node_modules\vm2\lib'
Error from chokidar (E:\node_modules): Error: EBUSY: resource busy or locked, lstat 'E:\pagefile.sys'
Error from chokidar (E:\node_modules): Error: EBUSY: resource busy or locked, lstat 'E:\pagefile.sys'
Run Code Online (Sandbox Code Playgroud)
当我尝试运行我的应用程序(react)时,突然出现了这个错误,甚至重新安装节点模块也不起作用,我也尝试重新安装节点和 webpack,但都不起作用。
'async_hooks' 的问题是它只能在服务器端的节点中使用 - 例如,如果 webpack 尝试创建一个执行静态包分析的“通用包” - 它将无法在客户端找到 'async_hooks' (因此出现错误)。
但是:你可以像这样绕过它:
const async_hooks = eval("typeof window === 'undefined' && require('async_hooks')");
if (async_hooks) { /*.../ }
Run Code Online (Sandbox Code Playgroud)
我通过在 webpack 5 配置文件中添加以下后备解决了该问题
resolve: {
fallback: {
async_hooks: false,
},
}
Run Code Online (Sandbox Code Playgroud)
小智 1
需要问你是否已经下载了该项目或者你是否已经完成了?如果您已在项目目录中下载(由于存在 package.json),您可以简单地:
npm i
Run Code Online (Sandbox Code Playgroud)
该命令将安装 package.json 文件中表示的具有相同版本的所有软件包。
如果这个命令没有帮助你,你可以做另一件事:
使用以下命令全局更新 NPM:
npm install -g npm@latest
Run Code Online (Sandbox Code Playgroud)
安装另一个版本的“async_hooks”。不幸的是,该软件包只有一个版本。
| 归档时间: |
|
| 查看次数: |
24852 次 |
| 最近记录: |