我正在关注这个网站并尝试通过以下命令将我的项目更新到11.0。
npx @angular/cli@11 update @angular/core@11 @angular/cli@11
每次运行它时,都会出现以下错误:
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: [email protected]
npm ERR! Found: @angular-devkit/[email protected]
npm ERR! node_modules/@angular-devkit/build-angular
npm ERR! dev @angular-devkit/build-angular@"~0.1102.17" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! dev @angular-devkit/build-angular@"~0.1102.17" from the root project
npm ERR! Conflicting peer dependency: @angular/[email protected]
npm ERR! node_modules/@angular/compiler-cli
npm ERR! peer @angular/compiler-cli@"^11.0.0 || ^11.2.0-next" from @angular-devkit/[email protected]
npm ERR! node_modules/@angular-devkit/build-angular
npm ERR! dev @angular-devkit/build-angular@"~0.1102.17" from the root project
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
在其他类似的问题上,我发现这个命令被引用了很多
npm install --legacy-peer-deps
我不确定上述命令有何帮助,因为我已经运行了 npm install 并且现在只是尝试使用
npx @angular/cli@11 update @angular/core@11 @angular/cli@11
进行升级
环境详情:
Global Angular CLI: 13.1.2
Local Angular CLI: 10.2.4
Angular version: 10.2.5
Node: 16.13.1
我可以做哪些不同的事情来使其发挥作用?
我可以这样解决:
运行以下升级命令后
npx @Angular/cli@11 更新@Angular/Core@11 @Angular/cli@11
它失败并出现相同的错误,但它更改了角度包的
package.json
文件。因此,在不更改 package.json 的情况下运行以下命令:
npm i --legacy-peer-deps
--legacy-peer-deps
在这里很重要。然后再次运行升级命令,它应该可以工作:
npx @Angular/cli@11 更新@Angular/Core@11 @Angular/cli@11
我遇到了同样的问题,因此更改了
package.json
中的一些依赖版本
"dependencies": {
"@angular/animations": "^11.2.14",
"@angular/cdk": "11.0.4",
"@angular/common": "^11.2.14",
"@angular/compiler": "^11.2.14",
"@angular/core": "^11.2.14",
"@angular/forms": "^11.2.14",
"@angular/platform-browser": "^11.2.14",
"@angular/platform-browser-dynamic": "^11.2.14",
"@angular/router": "^11.2.14",
}
"devDependencies": {
"@angular-devkit/build-angular": "^0.1102.6",
"@angular/cli": "^11.2.17",
"@angular/compiler-cli": "^11.2.14",
"@angular/language-service": "11.2.14"
}
删除
node_modules
并再次运行 npm i
。
对我有用的步骤如下 -
ng update @angular/core@11 @angular/cli@11
。这就是产生错误的原因。ng 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
ng update
并包含所有提到的插件(如果提到则包含版本)-ng update @angular-eslint/schematics @angular/cdk @angular/cli @angular/core @ngrx/store --force
--force
。我的项目已成功迁移。
1- 访问 Nodejs 网站并将您的版本更新到最新的 LTS 版本。
2- 转到操作系统命令行并运行
npm i -g npm
将 npm 更新到最新版本。
3-再次通过
npm uninstall
和 npm install
将您的全局 Angular 版本更新到 v11.0,
4-如果这些都不起作用,请尝试在另一台计算机上更新。