/** * @Lifecycle Activate * New one activated when old isnt being used. * * waitUntil(): activating ====> activated */ self.addEventListener('activate', (event) => { event.waitUntil(self.clients.claim()) })
self.addEventListener('message', (event) => { switch (event.data.action) { case 'skipWaiting': if (self.skipWaiting) { self.skipWaiting(); self.clients.claim(); } break; default: break; } });
self.addEventListener('activate', (e) => { console.log('[ServiceWorker] Activate'); e.waitUntil(caches.keys().then((keyList) => { return Promise.all(keyList.map((key) => { if (key !== cacheName && key !== dataCacheName) { console.log('[ServiceWorker] Removing old cache', key); return caches.delete(key); } })); })); return self.clients.claim(); });
self.addEventListener('activate', () => { self.clients.matchAll({ type: 'window' }).then(windowClients => { for (let windowClient of windowClients) { // Force open pages to refresh, so that they have a chance to load the // fresh navigation response from the local dev server. windowClient.navigate(windowClient.url); } }); });
// do some cleaning things self.addEventListener('activate', event => { event.waitUntil( caches.keys() .then(names => { return Promise.all(names.map(name => caches.delete(name))) }) .then(() => { return self.clients.claim() }) ) })
self.addEventListener('activate', event => { event.waitUntil( caches.keys().then(async keys => { // delete old caches for (const key of keys) { if (key !== ASSETS) await caches.delete(key); } await self.clients.claim(); }) ); });
/** * @Lifecycle Activate * New one activated when old isnt being used. * * waitUntil(): activating ====> activated */ self.addEventListener('activate', event => { event.waitUntil(self.clients.claim()) })
self.addEventListener('activate', (e) => { console.log('[ServiceWorker] Activate'); e.waitUntil(caches.keys().then((keyList) => { return Promise.all(keyList.map((key) => { if (key !== cacheName && key !== dataCacheName) { console.log('[ServiceWorker] Removing old cache', key); return caches.delete(key); } })); })); return self.clients.claim(); });
/** * @Lifecycle Activate * New one activated when old isnt being used. * * waitUntil(): activating ====> activated */ self.addEventListener('activate', (event) => { event.waitUntil(self.clients.claim()); });
self.addEventListener('activate', () => { self.clients.matchAll({ type: 'window' }).then(windowClients => { for (let windowClient of windowClients) { // Force open pages to refresh, so that they have a chance to load the // fresh navigation response from the local dev server. windowClient.navigate(windowClient.url); } }); });
self.addEventListener('activate', (e) => { console.log('[ServiceWorker] Activate'); e.waitUntil(caches.keys().then((keyList) => { return Promise.all(keyList.map((key) => { if (key !== cacheName && key !== dataCacheName) { console.log('[ServiceWorker] Removing old cache', key); return caches.delete(key); } })); })); return self.clients.claim(); });
self.addEventListener('activate', () => { self.clients.matchAll({ type: 'window' }).then(windowClients => { for (let windowClient of windowClients) { // Force open pages to refresh, so that they have a chance to load the // fresh navigation response from the local dev server. windowClient.navigate(windowClient.url); } }); });
self.addEventListener('activate', () => { self.clients.matchAll({ type: 'window' }).then(windowClients => { for (let windowClient of windowClients) { // Force open pages to refresh, so that they have a chance to load the // fresh navigation response from the local dev server. windowClient.navigate(windowClient.url); } }); });
/** * @Lifecycle Activate * New one activated when old isnt being used. * * waitUntil(): activating ====> activated */ self.addEventListener('activate', event => { event.waitUntil(self.clients.claim()) })
/** * @Lifecycle Activate * New one activated when old isnt being used. * * waitUntil(): activating ====> activated */ self.addEventListener('activate', event => { event.waitUntil(self.clients.claim()) })