路径“/ngsw-config.json”已经存在

Path "/ngsw-config.json" already exists

我创建了一个新的 angular 项目。然后我添加

ng add @angular/pwa 即使我找不到 ngsw-config.json 文件

我也遇到了这样的错误

Path "/ngsw-config.json" already exist.

在 angular 中,CLI 版本是 6.1.1。

Invalid rule result: Function().

In angular CLI 版本为 6.0.3

尝试安装 CLI 版本 6.0.8,然后在干净的项目中安装尝试 ng add @angular/pwa@0.6.8

核心团队似乎还没有解决这个错误,所以我们不得不使用较低的版本

你能post你的angular.json吗?

我在 angular.json 文件中定义了 "configurations: {...}" 时遇到了问题。删除它后我可以 ng add @angular/pwa

我遇到了同样的问题。我来自 Angular 5 更新到 Angular 6.

我使用这些特定版本来让它工作:

npm install --save @angular/cli@6.0.8

npm install --save @angular/pwa@0.6.8

而且我还必须从 angular.json 中删除此条目:

"ngswConfigPath": "src/ngsw-config.json"

当您将@angular/cli 版本移动到 6.0.8 时,您将在添加 ng add @angular/material 时面临另一个问题 ------ 添加最新的 Angular Material 和 PWA 到您的项目中请阅读下文。

这只是阅读许多 slackoverflow 和 github 解决方案后的转折点。 当我的@angular/cli 版本为 6.1.2 时,我可以成功添加 angular material --> 然后为了添加 Pwa,我将 @angular/cli 版本降级到 6.0.8,在我再次成功添加 PWA 之后,我将 @angular/cli 升级到下一个版本 v6.2.0-beta.1 然后我升级了我的 angular/core 和 angular/material.

我的cli代码-

**

> npm install --save @angular/cli@6.1.2
> ng new project
> ng add @angular/material
> npm install --save-dev @angular/cli@6.0.8
> ng add @angular/pwa --project <project_name>
> npm install --save @angular/cli@next
> ng update @angular/core
> ng update @angular/material

**

希望此解决方法对您有用。

我目前的版本

@angular/cli - 6.2.0-beta.1
@angular/material & @angular/cdk - 6.4.3
@angular/pwa - 0.6.8
 npm i @angular/cli@6.0.8

 npm add @angular/pwa@6.0.8

会好的