我正在开发一个Angular组件库,由于更新到Angular 13,我们在库的npm i @our/library@14.1.1-beta.1
期间出现了一些错误:
npm ERR! While resolving: test-app@0.0.0
npm ERR! Found: @angular/common@13.2.7
npm ERR! node_modules/@angular/common
npm ERR! @angular/common@"~13.2.0" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @angular/common@"^6.0.0 || ^7.0.0 || ^8.0.0" from @agm/core@1.1.0
npm ERR! node_modules/@agm/core
npm ERR! peer @agm/core@"^1.1.0" from @our/library@14.1.1-beta.1
npm ERR! node_modules/@our/library
npm ERR! @our/library@"14.1.1-beta.1" from the root project
因此,在我看来,@agm/core@1.1.0
具有@angular/common@"^6.0.0 || ^7.0.0 || ^8.0.0"
作为依赖项,这与@angular/common@"~13.2.0"
不兼容。这是正确的吗?
我试图将@angular/common@8.0.0
作为依赖项添加到我们的库中,但这没有起到任何作用,安装时的错误仍然存在。
Install可以使用--legacy-peer-deps
标志,但听起来这不是正确的安装方式。我使用npm v8.5.0和节点v14.18.2。
那么,除了删除@agm/core
并使用不同的东西之外,还有什么解决方案吗?
运行npm install --legacy-peer-deps
将修复一个错误。实际上,有些依赖项与较新/较旧的angular版本不兼容。安装对等deps安装必要的依赖项才能工作。它在本地安装特定插件的依赖项,而不是应用程序的依赖项。