我正在将我的应用程序从 Angular v11 升级到 Angular v12。当我尝试升级 Angular 包时出现此错误:
ng update @angular/core@12 @angular/cli@12
Migration failed: Incompatible peer dependencies found
Package has an incompatible peer dependency to "@angular/common" (requires "^8.1.3 || ^9.0.0" (extended), would install "12.0.0").
Package has an incompatible peer dependency to "@angular/core" (requires "^8.1.3 || ^9.0.0" (extended), would install "12.0.0").
这些只是警告,但迁移因此而失败。我可以选择使用
--force
忽略不兼容的对等依赖项并在以后解决这些警告的选项。我应该这样做吗?如果我这样做会破坏具有不兼容对等依赖项的包吗?
最佳答案
我面临同样的问题,这是我解决的步骤
ng update @angular/core@12 @angular/cli@12
.您最有可能收到如下错误 Package "@angular-eslint/builder" has an incompatible peer dependency to "@angular/cli" (requires ">= 11.2.0 < 12.0.0", would install "12.0.0").
× Migration failed: Incompatible peer dependencies found.
Peer dependency warnings when installing dependencies means that those dependencies might not work correctly together.
You can use the '--force' option to ignore incompatible peer dependencies and instead address these warnings later.
See "C:\Users\KOTIENO1\AppData\Local\Temp\ng-gY5FIE\angular-errors.log" for further details.
我们可以使用的警告建议--force
忽略警告。我们现在会这样做3) 运行
ng update
.这将返回我们需要运行的所有命令Using package manager: 'npm'
Collecting installed dependencies...
Found 68 dependencies.
We analyzed your package.json, there are some packages to update:
Name Version Command to update
-------------------------------------------------------------------------------------
@angular-eslint/schematics 4.2.0 -> 12.0.0 ng update @angular-eslint/schematics
@angular/cdk 11.2.11 -> 12.0.0 ng update @angular/cdk
@angular/cli 11.2.11 -> 12.0.0 ng update @angular/cli
@angular/core 11.2.12 -> 12.0.0 ng update @angular/core
@ngrx/store 11.1.1 -> 12.0.0 ng update @ngrx/store
There might be additional packages which don't provide 'ng update' capabilities that are outdated.
You can update the additional packages by running the update command of your package manager.
ng update @angular-eslint/schematics @angular/cdk @angular/cli @angular/core @ngrx/store --force
.这是第 3 步,您的可能略有不同。记得加--force
旗帜 这成功运行了许多警告
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: furaha-app@0.0.0
npm WARN Found: @angular/compiler-cli@12.0.0
npm WARN node_modules/@angular/compiler-cli
npm WARN @angular/compiler-cli@"~12.0.0" from the root project
npm WARN 3 more (@angular-devkit/build-angular, @angular/localize, ng-packagr)
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer @angular/compiler-cli@"^12.0.0-next" from @angular-devkit/build-angular@12.0.0
npm WARN node_modules/@angular-devkit/build-angular
npm WARN @angular-devkit/build-angular@"~12.0.0" from the root project
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: furaha-app@0.0.0
npm WARN Found: typescript@4.2.4
npm WARN node_modules/typescript
npm WARN typescript@"4.2.4" from the root project
npm WARN 4 more (@angular-devkit/build-angular, ...)
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer typescript@"~4.2.3" from @angular-devkit/build-angular@12.0.0
npm WARN node_modules/@angular-devkit/build-angular
npm WARN @angular-devkit/build-angular@"~12.0.0" from the root project
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: furaha-app@0.0.0
npm WARN Found: @angular/compiler@12.0.0
npm WARN node_modules/@angular/compiler
npm WARN @angular/compiler@"~12.0.0" from the root project
npm WARN 3 more (@angular/compiler-cli, @angular/localize, ng-packagr)
package.json
文件已更新。运行ng serve
确保一切按预期工作关于javascript - 迁移失败 : Incompatible peer dependencies found - Upgrading Angular to Version 12,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67566416/