服务工作者获取事件未触发

劳尔·卢卡奇(Raul Lukacs)

我有一个网站,并且在根目录下安装了服务工作者,甚至将作用域设置为“ /”,如此处所述:服务工作者正在缓存文件,但从未触发过获取事件

但是,fetch事件没有触发。任何帮助表示赞赏。

importScripts('/site/themes/libs/cache-polyfill.js');

self.addEventListener('install', function (e) {
  e.waitUntil(
    caches.open('v1').then(function (cache) {
      return cache.addAll([
        '/',
        '/test-page',
        '/site/themes/css/main.css',
        '/site/themes/js/vendors.min.js',
        '/site/themes/js/app.min.js'
      ]);
    })
  );

  self.skipWaiting()
});

self.addEventListener('fetch', function (event) {
  console.log(event.request.url);
  event.respondWith(
    caches.match(event.request).then(function (response) {
      return response || fetch(event.request);
    })
  );
});

编辑:我正在使用statamic网站。

二进制bossdhi

首先,验证服务工作者的注册事件是否成功。如果是,请尝试添加一个激活事件监听器。

//control current page
self.addEventListener('activate', function(event) {
console.log('Claiming control');
return self.clients.claim();
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章