在Angular 6更新之后,ng build --prod产生"错误:预计会找到一个ngsw-config.json配置文件"

时间:2018-05-06 04:16:16

标签: angular service-worker

更新很顺利,但是现在当我构建时,我收到以下错误。

  

错误:预计会在中找到一个ngsw-config.json配置文件   / Users / nathanielmay / Code / firebaseTest文件夹。提供一个或   在angular.json配置文件中禁用Service Worker。

我查看了angular.json并发现了这一行:

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

不允许使用属性ngswConfigPath。

我无法为新的angular.json找到api,但似乎我需要以不同的方式指定路径。

ng update @angular/pwa也没有。

如何解决此错误?

4 个答案:

答案 0 :(得分:14)

请确保在根文件夹中构建您的应用。我遇到了同样的问题,并且从根文件夹进行构建可以解决我的问题。

答案 1 :(得分:10)

我不确定"ngswConfigPath": "/src/ngsw-config.json"是如何添加的,但是我删除了它并且它构建得很好。

我遇到的下一个问题是ngsw-config.json已从src移出,并在升级期间移至项目根目录。我必须将我的更新复制到根ngsw-config.json,以便服务工作者正确注册。

答案 2 :(得分:6)

对于我的案例问题与路径前面添加的/符号相关联,因此我使用了"ngswConfigPath": "/src/ngsw-config.json"而不是"ngswConfigPath": "src/ngsw-config.json"并发布了固定。

答案 3 :(得分:0)

实际上生成了文件ngsw-config.json,但它位于不同的位置。 首先在angular.json / angular-cli.json配置文件中禁用Service Worker。然后在终端上运行ng build --prod。它应该没有错误地运行。

然后在angular.json / angular-cli.json中启用服务工作者,并在终端中再次运行ng build --prod命令。