为什么PWA ServiceWorker不适用于Ionic 2?

时间:2016-10-27 23:32:56

标签: ionic2 offline service-worker progressive-web-apps

我在使用离子2操作ServiceWorker时遇到了很大困难。 我用离子开始了一个新项目:

$ Ionic start pwa-project blank --v2

离子me创建的两个重要文件夹的默认结构:      - src      - www

两者都有文件: - Index.html(我必须取消对service-worker的调用) - Manifest.json(从我的应用程序设置数据) - Service-worker.js(我的服务工作者本身)

ionc中开发人员的逻辑并未涉及 www 文件夹中的任何内容,只能在 src 文件夹中使用。我做了,运行$ ionic serve并开始编辑我的html,service-worker和manifest,所有这些都在 src 文件夹中。但我注意到这些更改未反映在 www 文件夹中的相同文件中。 重新启动了$ ionic serve,没有任何反应。

好的,然后我继续直接在 www 文件夹中编辑这三个文件,从我的服务工作者激活。

这次我遇到了另一个问题。服务工作者不运行。 该脚本在index.html文件中调用service-worker,向控制台输出成功消息"安装服务工作者" 确认它已安装,但我写了一些{{1在我的服务工作者事件和这些事件没有被解雇,我不能说为什么。

console.log()

这些都没有显示在控制台上,这让我觉得服务工作者出于某种原因没有运行。

在Chrome DevTools的“应用程序”窗格中,显示已安装并启用了service-worker。

有没有人遇到过这个问题?管理解决?

PS。:当我在vanilla javascript中创建项目时,一切正常,服务工作者已安装,正在运行,并且消息通常显示在控制台上,这让我相信有任何干扰Ionic(v2)。 / p>

我的离子信息是:

console.log ( '[SERVICE WORKER] Install');
console.log ( '[SERVICE WORKER] Activate');
console.log ( '[SERVICE WORKER] Fetch');

1 个答案:

答案 0 :(得分:0)

晚会,但对于我目前的设置,一切正常:

cli packages: (/home/khophi/Developments/Ionic/KhophiPwa/node_modules)

    @ionic/cli-utils  : 1.9.2
    ionic (Ionic CLI) : 3.9.2

global packages:

    Cordova CLI : 7.0.1 

local packages:

    @ionic/app-scripts : 2.1.3
    Cordova Platforms  : android 6.2.3 ios 4.4.0
    Ionic Framework    : ionic-angular 3.6.0

System:

    Android SDK Tools : 26.0.2
    Node              : v7.10.1
    npm               : 4.2.0 
    OS                : Linux 4.10