导入MatTabChangeEvent报错:Angular Material依赖版本不兼容求助
解决Angular Material与CDK版本不匹配的编译错误
这个问题我太熟了!根源就是你项目里的Angular Material和CDK版本不匹配导致的——你用了@angular/cdk@6.0.0,但@angular/material还是5.2.5,这俩可是绑定死的搭档,版本必须完全一致才行,跨大版本混用就会触发这种类型定义不兼容的编译错误。
下面是具体的解决步骤:
第一步:统一Material和CDK的版本
因为你的Angular Animations是5.0.0,说明你的Angular核心版本应该是5.x系列,所以我们要把CDK降到和Material一致的5.2.5:
先卸载当前的CDK:npm uninstall @angular/cdk再安装对应版本的CDK:
npm install @angular/cdk@5.2.5 --save第二步:同步Angular Animations版本(可选但推荐)
为了避免其他潜在的版本兼容问题,建议把@angular/animations也升级到和Angular核心、Material匹配的5.2.5:npm install @angular/animations@5.2.5 --save第三步:清理缓存并重新构建
有时候npm缓存会残留旧版本的文件,导致问题依旧,所以执行以下命令:npm cache clean --force npm install之后重新启动你的Angular项目:
ng serve
完成这些步骤后,那个TS2416的类型不匹配错误应该就消失啦。
内容的提问来源于stack exchange,提问作者Kaushik Nath
相关产品推荐
相关产品推荐

