如何仅升级项目内Angular版本?解决ng命令未识别问题
解决Angular项目本地升级及ng命令未识别问题
一、解决"ng未被识别"的问题
无需全局安装Angular CLI,通过以下两种方式调用项目本地的CLI:
- 利用package.json中的scripts:执行
npm run ng <命令>,比如npm run ng version查看本地版本,npm run ng update ...执行升级 - 使用npx:执行
npx ng <命令>,npx会自动查找项目node_modules/.bin下的本地CLI
二、规范升级项目内Angular版本的方法
官方推荐使用本地Angular CLI的ng update命令,而非手动修改package.json,步骤如下:
- 检查当前版本:
npm run ng version - 分步升级(推荐):
Angular不建议跨多个大版本直接升级,每次只升级一个相邻大版本(比如从14→15,再15→16),执行对应版本的升级命令:
该命令会自动完成:# 升级到15版本示例,替换版本号为目标版本 npm run ng update @angular/core@15 @angular/cli@15- 更新package.json中所有Angular相关依赖的版本
- 安装匹配版本的依赖包
- 执行官方迁移脚本,修复废弃API、更新配置文件(如angular.json)等
- 跨版本升级:
如果需要跨多个版本,重复执行上述命令,依次升级每个相邻版本,比如12→13→14→15。
三、升级最佳实践
- 不要手动修改package.json:手动修改容易导致依赖版本不兼容(如@angular/cli与@angular/core版本不匹配、rxjs/zone.js版本不兼容),
ng update会自动处理依赖关系 - 升级前备份代码:用Git提交当前代码状态,或备份项目文件夹,避免升级出错无法回退
- 升级后验证:执行
npm install确保依赖安装完整,然后运行npm start启动项目、npm run test执行测试,检查是否正常运行 - 处理第三方依赖:升级后检查项目中第三方库(如UI组件库)是否兼容目标Angular版本,同步升级这些依赖到兼容版本
- 查看迁移提示:升级过程中CLI会输出迁移提示,比如废弃API的替换方式,按照提示修改代码即可
内容的提问来源于stack exchange,提问作者Arbs998
相关产品推荐
相关产品推荐

