PWA中Cache API缓存的资源怎么更新不生效?
我在做PWA离线功能,用Cache API缓存了静态资源,但更新文件后刷新页面还是加载旧缓存,试过改cacheName也不行。
service worker里是这样写的:
self.addEventListener('install', (event) => {
event.waitUntil(
caches.open('v2').then(cache => cache.addAll([
'/',
'/index.html',
'/styles/main.css',
'/scripts/app.js'
]))
);
});
是不是哪里漏了?为什么新版本的文件刷不出来?
加上fetch事件:
改完记得在浏览器里手动更新service worker,或者在代码里加skipWaiting强制更新。