【环境】
npm@7.24.1
node@v12.16.2
一、分析原因:
经排查,1、发现有组件package.json中有peer dependency,指明了angular 7.x 的版本,与当前项目依赖的angular 8.x的版本不兼容,导致编译报错。
2、另外,原先使用npm 6.x install是没有问题的,是因为npm 7.x 对peer dependency的兼容性要求更高,所以报错。
二、解决方法:
方法1:--force 或者 --legacy-peer-deps
npm install --force
npm install --legacy-peer-deps
方法2:
修改问题组件的依赖定义package.json,修正peer-dependency所依赖的组件版本。
【延申阅读】
对peerDependencies的理解 (xwenliang.cn)https://xwenliang.cn/p/5af2a97d5a8a996548000003