5

我有一个问题@angular/pwa。当我在生产模式下构建时,我没有在我的 dist 文件夹中获取ngsw-worker.js文件ngsw.json

我使用的 pwa 版本是:

@angular/pwa: ^0.13.8
@angular/service-worker: ~7.1.0
@angular version 7

提前致谢

4

2 回答 2

-1

此答案仅在以下情况下相关:

NX 版本 11

现在版本 10(见下文)的解决方法不再有效!

一种解决方法是选择退出 nx ng-cli-decorate 补丁

引自nx#4452

要退出此补丁:

将 package.json 中出现的 nx 替换为 ng 从 package.json 中的 postinstall 脚本中删除脚本 删除并重新安装 node_modules

NX 版本 10

为了解决这个问题(我们使用 nx 版本 10),我们替换了:

  • ng build client --configuration=production,variant
  • nx build client -c=production,variant

问题是,nx 没有将配置正确传递给ng,因此ng没有构建生产配置(因此没有 PWA/service-worker)

nx问题的链接:

于 2021-02-17T08:25:22.867 回答
-2

您可以从 node_modules 文件夹(从项目文件夹中的提示符)复制文件:

cp node_modules/@angular/service-worker/ngsw-worker.js ./src/ngsw-worker.js
cp node_modules/@angular/service-worker/ngsw-config.json ./ngsw-config.json

您可能还需要确保您的服务人员已注册。关于这个主题的精彩介绍:https ://javascript-conference.com/wp-content/uploads/2017/12/Automatic_Progressive_Web_Apps_using_Angular_Service_Worker_Maxim_Salnikov.pdf

于 2019-09-04T12:24:43.470 回答