Angular Service Worker 未在开发模式下注册

标签 angular progressive-web-apps angular-service-worker

我想知道是否可以在开发模式(非生产)期间测试 pwa 并注册 serviceworker

当我进行 ng build --prod 然后在 dist 文件夹中启动http-server时它工作正常,但是当我在没有构建的情况下进行服务时,它给了我chrome错误:Service Worker failed to register

prod 和 dev 上的程序是否相同?与灯塔一样,审计让我在 prod 上对 serviceworker 没问题,但在同一个项目的 dev 中不行

任何帮助或链接将不胜感激

谢谢

最佳答案

这个问题已经有 2 年了,但我看到它没有得到回答。
你不能用 ng server 运行 service worker。正如您所提到的,它使用 http-server 工作。这是设计使然。请参阅 Angular 文档 here .
但是,如果您没有测试特定的 Service Worker 功能,例如离线时从缓存中检索数据,您的应用程序仍将使用 ng serve 运行,包括通过 http 检索数据。

关于Angular Service Worker 未在开发模式下注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48609162/

相关文章:

javascript - 在 Angular 6 上为 *ngFor 内的输入类型复选框启用双向数据绑定(bind)

ionic-framework - Ionic 4 PWA Angular 8 - 无法通过服务 worker 错误获取开始 URL

progressive-web-apps - 如何设置在 PWA 网络推送通知中显示的应用程序名称?

Angular 7 pwa/SwPush - 推送通知不起作用

angular - 在 Angular Service worker 中缓存 index.html

Angular 2 Kendo 网格不支持 odata v4

angular - 错误 : InvalidPipeArgument: '[object Object]' for pipe 'AsyncPipe'

angular - 运行 build --prod 时没有生成服务 worker 文件 ngsw.json/ngsw-worker.json。 Angular 5

javascript - 在 angular2 中将两个 URL 合并为一个 - ionic2

javascript - 有没有办法为移动设备实现带有视频聊天的 PWA?