You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Angular Material v6到v7时出现peer依赖不兼容问题求解

错误成因
  • Angular CLI 的 update 命令执行依赖升级时,默认会尝试将关联核心依赖升级到当前源下的最新稳定版本,而非完全遵循本地 package.json 声明的版本范围。你看到的 would install "13.0.2" 就是命令解析时默认匹配到的 @angular/common 最新稳定版,没有读取你本地声明的^7.2.16范围。
  • 依赖解析优先级的问题:@angular/material@7 的依赖树对@angular/common的版本要求,在解析时优先级高于第三方包@kolkov/angular-editor的peer依赖声明,导致命令优先尝试升级@angular/common到适配material的最高可用版本,忽略了第三方包的版本限制。
解决方案
  • 执行升级命令时添加--force参数,跳过peer依赖校验:
    npx @angular/cli@7 update @angular/material@7 --force
    
    该参数会强制命令按照你本地package.json已声明的@angular/common版本范围安装适配的material v7版本,不会尝试升级核心包到13.x版本。
  • 临时固定核心包版本:将package.json中@angular/common的版本从^7.2.16修改为固定版本7.2.16,执行升级命令完成后再改回原版本范围即可,可阻止解析工具尝试升级该包。
  • 若后续有升级Angular大版本的计划,可先将@kolkov/angular-editor升级到适配高版本Angular的版本,再执行material升级操作,即可从根源避免peer依赖冲突。

内容的提问来源于stack exchange,提问作者enbma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 04:06:06