Angular的服务工作者5

时间:2018-04-20 15:58:28

标签: angular angular5 angular-service-worker

我正在尝试在我的项目中使用角度服务工作者。我的cli和其他配置如下 -

Angular CLI: 1.6.8
Node: 8.9.4
OS: win32 x64
Angular: 5.2.4
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cdk: 5.2.1
@angular/cli: 1.6.8
@angular/flex-layout: 2.0.0-beta.12
@angular/material: 5.2.1
@angular/service-worker: 1.0.0-beta.16
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/core: 0.2.0
@angular-devkit/schematics: 0.0.52
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.8
@schematics/angular: 0.1.17
typescript: 2.4.2
webpack: 3.10.0

我使用-service-worker标志创建了项目,并且还创建了ngsw.config.json文件。当我试图注册服务工作者时,我的问题开始了。

  1. 当我尝试使用注册服务工作者时 “ServiceWorkerModule.register()”,“注册”方法本身不是 得到认可,这是错误的。
  2. 为什么我无法看到任何其他类如swPush等。

3 个答案:

答案 0 :(得分:0)

如果没有https,服务人员将无法工作。

安装将在http。

上失败

点击此处查看详情:https://developers.google.com/web/fundamentals/primers/service-workers/#you_need_https

答案 1 :(得分:0)

您需要使用--prod标记构建您的应用。否则,不会创建service-worker.js和ngsw.json,也不会注册。

答案 2 :(得分:0)

您可以尝试以下步骤:

  • ng添加@ angular / service-worker

  • ng build --prod

  • npm i -g http-server

  • http服务器-p 8080

您也可以添加到主屏幕选项。