Angular CLI安装报错:ng命令未识别及fsevents平台不兼容警告
ng命令无法识别及fsevents警告问题 嘿,我来帮你搞定这个问题!先给你拆解一下遇到的两个情况:
关于fsevents的警告
首先那个看起来有点吓人的警告:
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
完全不用在意它!fsevents是专门给macOS系统设计的文件监听依赖,你的Windows系统根本用不上它,npm只是自动跳过了这个可选依赖而已,对Angular CLI的功能没有任何影响,直接忽略就行。
重点解决ng命令无法识别的问题
这个问题大概率是因为npm的全局安装路径没加到系统环境变量里,再加上你的Node和npm版本确实偏老(Node 8.11.1和npm 4.1.2都是好几年前的版本了),咱们一步步来修复:
步骤1:找到npm全局包的安装路径
打开命令提示符(CMD)或者PowerShell,执行这条命令:
npm config get prefix
它会返回npm全局安装包的路径,Windows下通常是C:\Users\你的用户名\AppData\Roaming\npm,如果是管理员权限安装的话可能是C:\Program Files\nodejs。
步骤2:把路径添加到系统环境变量
- 右键点击「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「系统变量」里找到
Path变量,点击「编辑」 - 点击「新建」,把刚才得到的npm全局路径粘贴进去
- 依次点击「确定」保存所有设置
步骤3:重启命令行工具
关闭所有打开的CMD/PowerShell窗口,重新打开一个新窗口,输入ng --version试试,应该就能识别命令了。
如果还是不行,试试升级Node和npm
你的Node 8.x版本太老了,Angular CLI的新版本对Node版本有要求,建议升级到LTS版本:
- 安装Node.js最新LTS版本时,记得勾选「Add to PATH」选项
- 安装完成后重启命令行,用
node -v和npm -v确认版本更新 - 先卸载旧的CLI再重新安装:
npm uninstall -g @angular/cli npm cache clean --force npm install -g @angular/cli
这样操作下来,应该就能顺利使用ng命令啦!
内容的提问来源于stack exchange,提问作者prasanna deo

