运行项目之node版本问题出现的报错

本文介绍了在运行项目时遇到的Node版本问题及其解决方法。当使用`npm install`和`npm run dev`启动Webpack项目时,由于本地Node版本与项目所依赖的版本不匹配,导致报错。解决方法包括使用nvm(Node Version Manager)切换到合适的Node版本,或者直接修改webpack.dev.config文件以适应当前环境。通过这两种方式,可以成功运行项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、报错提示

//报错
C:\Users\APRIL\Desktop\code\thinkjs-iview-admin\front-end>npm run dev

> front-end@1.2.3 dev C:\Users\APRIL\Desktop\code\thinkjs-iview-admin\front-end
> webpack-dev-server --content-base ./ --open --inline --hot --compress --config build/webpack.dev.config.js

Happy[happybabel]: Version: 4.0.0. Threads: 2 (shared pool)
fs.js:169
  throw new ERR_INVALID_CALLBACK(cb);
  ^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received 29
    at maybeCallback (fs.js:169:9)
    at Object.write (fs.js:694:14)
    at C:\Users\APRIL\Desktop\code\thinkjs-iview-admin\front-end\build\webpack.dev.config.js:13:8
    at FSReqCallback.oncomplete (fs.js:180:23) {
  code: 'ERR_INVALID_CALLBACK'
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! front-end@1.2.3 dev: `webpack-dev-server --content-base ./ --open --inline --hot --compress --config build/webpack.dev.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the front-end@1.2.3 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\APRIL\AppData\Roaming\npm-cache\_logs\2022-04-29T06_11_27_829Z-debug.log

二、报错的核心问题

Happy[happybabel]: Version: 4.0.0. Threads: 2 (shared pool)
fs.js:169
  throw new ERR_INVALID_CALLBACK(cb);
  ^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received 29
    at maybeCallback (fs.js:169:9)
    at Object.write (fs.js:694:14)
    at C:\Users\APRIL\Desktop\code\thinkjs-iview-admin\front-end\build\webpack.dev.config.js:13:8
    at FSReqCallback.oncomplete (fs.js:180:23) {
  code: 'ERR_INVALID_CALLBACK'
}

三、解决方法

3.1 问题起源

gitee上找了开源代码学习,按照1.npm install 安装node_modules;2.npm run dev在webpack下运行项目出现如代码(段落二)的报错。

原因在于:本电脑的node安装环境与clone的项目代码利用的node环境不一致,才导致报错;这样在webpack配置文件中的fs.write写法不兼容,修改即可。

3.2 解决方法

3.3.1 方法一:修改node为nvm

nvm介绍、nvm下载安装及使用_前端菜鸡小卒的博客-优快云博客_nvm】nvm是什么如何使用转载博主所示。

3.3.2 方法二:修改webpack.dev.config文件

修改代码如下:

//后来新添
fs.write(fd, buf, function(err, written, buffer) {}); // node --version < v10.1.0

//原先
fs.write(fd, buf, 0, buf.length, 0, function(err, written, buffer) {}) */

如图:

 这样代码就可以顺利运行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值