Angular 8 对等依赖关系混乱

Sta*_*ino 5 npm angular

我正在使用 Angular 8,并且不断收到有关 Angular/compiler-cli 对等依赖关系的 npm 警告。

npm WARN @angular/compiler-cli@8.1.2 需要 @angular/compiler@8.1.2 的同级,但没有安装。您必须自己安装对等依赖项。

但是,如果我执行 a npm install @angular/compiler@8.1.2,npm 会继续抱怨相同的消息。

@angular/compiler@^8.0.0 安装在 dependency 下的 package-json 下,而 '@angular/compiler-cli@^8.1.2 和 @angular/compiler@^8.1.2 安装在 devDependencies 下。

这对我来说没有任何意义。

有谁知道如何生成提供更多信息的错误消息?

或者至少如何解决这种类型的 npm 不一致问题?

Md.*_*fee 1

首先运行以下代码以在您的项目中自动更新

ng update
Run Code Online (Sandbox Code Playgroud)

Ng update 是 Angular CLI 中可用的命令,用于更新应用程序及其依赖项。

如果这不起作用,请尝试使用以下命令

ng update @angular/cli @angular/core  
Run Code Online (Sandbox Code Playgroud)
@angular/compiler@^8.0.0 is installed package-json under dependencies and '@angular/compiler-cli@^8.1.2 and
@angular/compiler@^8.1.2 are installed under devDependencies.
Run Code Online (Sandbox Code Playgroud)

有两种依赖关系。

“依赖项”:您的应用程序在生产中所需的包。

“devDependency”:仅本地开发和测试所需的包。

您将在项目的 package.json 中看到这两个。该消息表明这两个依赖项中安装了两个不同版本的 @angular/compilar