问:Service Worker在浏览器中工作,但不能作为PWA使用

时间:2018-09-13 12:10:49

标签: javascript android google-chrome progressive-web-apps

我正在做我的第一个PWA,并且从头开始。当我在Chrome中启动它时,它可以正常工作并缓存所有静态文件,而当我离线时,它仍然可以工作。我的问题是,当我下载pwa然后脱机时,由于某种原因它不会将其缓存。我真的找不到解决方案,所以我尝试从这里获得一些见识。

这是我的代码:

const CACHE_NAME = 'static_cache_v1'
const staticAssets = [
    './',
    './style.css',
    './main.js'
];
self.addEventListener('install', async event => {
    const cache = await caches.open(CACHE_NAME);
    cache.addAll(staticAssets);
});
self.addEventListener('fetch', async event => {
    const req = event.request;
    event.respondWith(cacheFirst(req));
});
async function cacheFirst(req) {
    const cachedResponse = await caches.match(req);
    return cachedResponse || fetch(req);
}
self.addEventListener('activate', async event => {

});

您可以在这里看到我的示例: pwa

0 个答案:

没有答案