Angular 发现不兼容的对等依赖项-从8升级到9

Angular 发现不兼容的对等依赖项-从8升级到9,angular,Angular,我正在按照官方文件进行升级 此步骤已完成,没有任何错误 ng update @angular/core@8 @angular/cli@8 下一步失败了 ng update @angular/core @angular/cli The installed Angular CLI version is older than the latest stable version. Installing a temporary version to perform the update. Install

我正在按照官方文件进行升级

此步骤已完成,没有任何错误

ng update @angular/core@8 @angular/cli@8
下一步失败了

ng update @angular/core @angular/cli
The installed Angular CLI version is older than the latest stable version.
Installing a temporary version to perform the update.
Installing packages for tooling via npm.
Installed packages for tooling via npm.
Using package manager: 'npm'
Collecting installed dependencies...
Found 45 dependencies.
Fetching dependency metadata from registry...
                  Package "@angular/core" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/animations" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/compiler" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/forms" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/common" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/platform-browser" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/compiler-cli" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/router" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@angular/platform-browser-dynamic" has a missing peer dependency of "tslib" @ "^1.10.0".
                  Package "@ngtools/webpack" has an incompatible peer dependency to "typescript" (requires ">=3.4 < 3.6", would install "3.7.5").
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.

纳伏输出

Angular CLI: 8.3.25
Node: 12.13.0
OS: win32 x64
Angular: 8.2.14
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.803.24
@angular-devkit/build-angular     0.803.25
@angular-devkit/build-optimizer   0.803.24
@angular-devkit/build-webpack     0.803.25
@angular-devkit/core              8.3.24
@angular-devkit/schematics        8.3.24
@angular/cli                      8.3.25
@ngtools/webpack                  8.3.24
@schematics/angular               8.3.24
@schematics/update                0.803.24
rxjs                              6.5.4
typescript                        3.4.5
webpack                           4.41.5

我还没试过使用--force选项。还有其他方法吗?

看起来您浏览了其中一个错误:

包“@ngtools/webpack”与“typescript”具有不兼容的对等依赖关系(要求“>=3.4<3.6”,将安装“3.7.5”)。

尝试使用适用于TypeScript 3.4至3.5的更低版本的@ngtools/webpack


或者,将package.json中的TypeScript版本更新为3.7.5并运行
npm update
,然后您应该能够更新@angular/core&@angular/cli。

在我的情况下,接受的答案不起作用。所以我执行了下面的命令,它对我有效

npm install @angular/cli@latest @angular-devkit/build-angular@latest  --save-dev

但我是在我的一个本地项目上做的,而不是在系统上的全局角度版本。

在我的情况下,解决方法是在运行ng update[package]时使用
--force
标志来覆盖依赖性问题


这将升级软件包,您可以使用更新的依赖项验证您的应用程序。如果由于中断更改而仍然需要更新该第三方依赖项,则需要更新该包。

ng update@angular/core@angular/cli--force
可能需要使用
--force
标志,请参阅升级文档中的上一步更新/安装的。

该版本:ng update@angular/core@8@棱角/cli@8Then我想,您应该在package.json中更新您的typescript版本:“typescript”:“~3.4”`package.json有~3.4,ngv报告它是3.4.5。我将用ng v的输出更新这个问题。我想你误解了。您尝试升级的@angular/core和@angular/cli版本依赖于@ngtools/webpack版本,该版本需要比您安装的版本更高的TypeScript版本。您能否更新答案以反映我所做的操作,以便我可以接受它作为答案?我得到的是完全相同的不兼容对等依赖项列表你能解决这个问题吗?你所标的答案我不清楚。你能提到你采取了哪些步骤来解决这个问题吗?有什么更新吗?你找到了问题的根本原因或解决方案了吗?我面临同样的问题,不想使用武力。短暂性脑缺血发作
npm install @angular/cli@latest @angular-devkit/build-angular@latest  --save-dev