Node.js版本不对引起的 构建失败提示throw new ERR_INVALID_CALLBACK();
错误描述
公司项目使用iview-admin ,当使用npm run build命令打包是报错。
错误提示如下:
PowerShell 全选
> webpack-dev-server --content-base ./ --open --inline --hot --compress --history-api-fallback -
TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
at maybeCallback (fs.js:128:9)
at Object.write (fs.js:540:14)
at E:\GZ\JianChaYi\TianYanPCWeb\webpack.dev.config.js:17:8
at FSReqWrap.args [as oncomplete] (fs.js:140:20)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! vueAdmin@1.0.0 dev: `webpack-dev-server --content-base ./ --open --inline --hot --compress --history-api-fallback --port 8081 --config webpack.dev.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the vueAdmin@1.0.0 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\XQ-Garson\AppData\Roaming\npm-cache\_logs\2021-10-10T06_48_21_173Z-debug.log
解决办法
问题原因:node 版本问题,node v10 以上 fs.write 的callback 是必须的,降低Node版本可解决。
不安装node也可以,可以将webpack.dev.config.js 和 webpack.prod.config.js 中的代码修改即可:给fs.write添加必要的callback函数,具体操作是修改以上两个文件中的以下代码:
fs.write(fd, buf, 0, buf.length, 0, function(err, written, buffer) {});
修改为:
fs.write(fd, buf, 0, 'utf-8', function(err, written, buffer) {});
重新使用npm run build命令继续打包即可。
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
post 管理员