运行ng serve提示CLI仅兼容Angular ^13.0.0无法启动怎么办?
问题原因
Angular项目启动时会优先调用项目本地node_modules中安装的@angular/cli版本,而非全局安装的CLI版本,因此仅降级全局CLI不会解决版本不匹配问题。
解决步骤
- 第一步:删除旧依赖与缓存文件,避免残留版本干扰
rm -rf node_modules package-lock.json yarn.lock npm cache clean --force - 第二步:匹配本地CLI版本与项目Angular核心版本
打开项目package.json文件,确认@angular/core、@angular/common等核心依赖的大版本号,若核心版本为12.x,就在项目本地安装对应版本的CLI:npm install @angular/cli@12 --save-dev - 第三步:使用项目本地CLI启动服务
不要直接执行全局的ng serve,优先调用项目本地的CLI实例:
方法1:使用package.json自带的启动脚本(默认已配置)
方法2:用npx调用本地CLInpm startnpx ng serve
补充排查点
树莓派环境下需额外确认Node.js版本符合对应Angular版本要求:Angular 12仅兼容Node.js 12.20.x / 14.15.x / 16.10.x版本,若Node版本过高可通过nvm切换至匹配的LTS版本后重新安装依赖启动。
内容的提问来源于stack exchange,提问作者Destry LP
相关产品推荐
相关产品推荐

