构建Angular 10项目出现DEP0111弃用警告该如何处理?
问题原因
该DEP0111警告是Node.js v16及以上版本废弃了process.binding('http_parser')接口导致的,Angular 10官方适配的Node.js版本范围为10.13.x ~ 14.x,你使用的过高版本Node.js和Angular 10存在依赖兼容性问题。
解决方案
方案一:降级Node.js到兼容版本(最稳妥)
- 卸载当前使用的最新版Node.js,安装14.x的LTS版本即可适配Angular 10的所有依赖,不会触发该警告。
- 如果你需要同时维护多个Node版本,可以使用nvm(Windows系统用nvm-windows)做版本管理,切换版本命令如下:
nvm install 14.21.3 nvm use 14.21.3
方案二:不降级Node的临时修复方案
如果必须使用高版本Node,可以通过强制升级依赖的http-parser相关包解决:
- 在项目根目录下新增
.npmrc文件,添加以下内容:
legacy-peer-deps=true
- 安装
http-parser-js的最新兼容版本:
npm install http-parser-js@0.5.8 --save-dev
- 清理缓存后重新构建项目:
npm cache clean --force rm -rf node_modules package-lock.json npm install ng build
注意:该方案属于临时兼容处理,可能会出现其他未知的依赖冲突,建议优先选择方案一。
内容的提问来源于stack exchange,提问作者pro education
相关产品推荐
相关产品推荐

