Node.js v11.0.0创建Angular应用报错:非LTS版本及未处理Promise拒绝
解决Angular CLI创建应用时的Node版本兼容问题
问题根源
你遇到的错误本质是Node.js v11.0.0是非LTS开发版本,Angular CLI对Node版本有严格兼容要求,非LTS版本的Node存在稳定性问题,会直接导致依赖安装阶段出现Promise拒绝警告,甚至创建应用失败。
解决步骤
彻底清理旧版本残留(关键)
之前的重装操作可能没清理干净残留文件,导致系统仍识别旧版本:- 卸载系统中的Node.js(Windows用控制面板/系统设置,Mac/Linux用
brew uninstall node或对应包管理工具) - 删除残留文件夹:
- Windows:删除
C:\Program Files\nodejs、C:\Program Files (x86)\nodejs,以及用户目录下的%USERPROFILE%\.npm、%USERPROFILE%\AppData\Roaming\npm、%USERPROFILE%\AppData\Roaming\npm-cache - Mac/Linux:删除
/usr/local/bin/node、/usr/local/lib/node_modules,以及~/.npm、~/.node-gyp
- Windows:删除
- 检查系统环境变量,移除所有和旧Node.js相关的路径
- 卸载系统中的Node.js(Windows用控制面板/系统设置,Mac/Linux用
安装Node.js LTS版本
下载偶数编号的LTS版本(如v20.x、v18.x),安装时务必勾选"Add to PATH"选项。安装完成后打开新终端,执行以下命令验证:node -v npm -v确保输出的是你安装的LTS版本号。
重新安装Angular CLI
先卸载全局的旧Angular CLI,再安装兼容当前Node版本的最新版:npm uninstall -g @angular/cli npm install -g @angular/cli@latest执行
ng version确认Angular CLI版本和Node版本匹配。再次尝试创建应用
打开新终端,执行ng new app,此时应该不会再出现版本警告和Promise拒绝错误。
补充说明
Node.js的奇数版本属于开发预览版,不会进入长期支持(LTS)状态,Angular官方明确推荐使用LTS版本进行开发和生产,避免因版本不稳定导致的各类依赖问题。
内容的提问来源于stack exchange,提问作者Ramsey Ibe
相关产品推荐
相关产品推荐

