Angular 13项目升级到14版本时出现依赖不兼容报错如何解决
报错原因
这个依赖冲突是因为当前项目中安装的@angular-eslint/schematics是适配Angular 13的版本,它声明的peer依赖规则要求@angular/cli版本必须在>=13.0.0 <14.0.0区间内,和你要升级安装的14.0.1版本@angular/cli版本要求不匹配,直接阻断了升级流程。
解决步骤
按顺序执行操作即可完成升级:
- 先升级@angular-eslint相关依赖到适配Angular 14的14.x大版本,执行命令:
ng update @angular-eslint/schematics@14 - 等待上述ESLint相关依赖升级完成后,再执行原本的Angular框架升级命令:
ng update @angular/core@14 @angular/cli@14
如果执行第一步升级ESLint包时仍然报peer依赖冲突错误,可以追加--force参数跳过依赖校验强制安装对应版本,命令调整为:ng update @angular-eslint/schematics@14 --force
说明:这里加
--force只是跳过临时的版本区间校验,最终安装的@angular-eslint 14.x版本是官方专门适配Angular 14的版本,不会出现兼容性问题。执行完成后可以打开package.json检查所有@angular-eslint开头的依赖版本是否都升级到了14.x区间。
- 升级完成后可以执行
ng version校验所有Angular相关包版本,确认@angular/core、@angular/cli、@angular-eslint/schematics均为14.x版本后,再执行ng serve验证项目可正常启动即可。
内容的提问来源于stack exchange,提问作者Wain2021
相关产品推荐
相关产品推荐

