基本信息
源码名称:PWA离线缓存简单例子
源码大小:31.17M
文件格式:.zip
开发语言:C#
更新时间:2018-06-08
   源码介绍

实现简单的离线缓存页面和数据,google浏览器把页面添加到桌面快速访问

现阶段只有google、Firefox等部分浏览器支持此效果


self.addEventListener('install', function (e) {
    e.waitUntil(
      caches.open(cacheName).then(function (cache) {
          return cache.addAll(filesToCache);
      })
    );
});

self.addEventListener("fetch", function (e) {
    if (e.request.url.indexOf(dataUrl) === 0) {
        return e.respondWith(caches.open(dataCacheName).then(function (cache) {
            return fetch(e.request).then(function (response) {
                cache.put(e.request.url, response.clone());
                return response;
            });
        }));
    } else {
        e.respondWith(caches.match(e.request).then(function (response) {
            return response || fetch(e.request);
        }));
    }
});

self.addEventListener("activate", function (e) {
    e.waitUntil(caches.keys().then(function (keyList) {
        return Promise.all(keyList.map(function (key) {
            if (key !== cacheName && key !== dataCacheName) {
                return caches.delete(key);
            }
        }));
    }));
});