refactor: streamline cache management in service worker for improved performance and client navigation
This commit is contained in:
parent
bd51f9abe0
commit
94eecde2b1
17
public/sw.js
17
public/sw.js
@ -11,14 +11,15 @@ self.addEventListener('install', () => {
|
|||||||
// ── Activate ─────────────────────────────────────────────────────────────────
|
// ── Activate ─────────────────────────────────────────────────────────────────
|
||||||
self.addEventListener('activate', (event) => {
|
self.addEventListener('activate', (event) => {
|
||||||
event.waitUntil(
|
event.waitUntil(
|
||||||
caches
|
(async () => {
|
||||||
.keys()
|
const keys = await caches.keys();
|
||||||
.then((keys) =>
|
await Promise.all(keys.map((k) => caches.delete(k)));
|
||||||
Promise.all(
|
|
||||||
keys.filter((k) => k !== CACHE_NAME).map((k) => caches.delete(k)),
|
await self.registration.unregister();
|
||||||
),
|
|
||||||
)
|
const clientList = await self.clients.matchAll({ type: 'window' });
|
||||||
.then(() => self.clients.claim()),
|
clientList.forEach((client) => client.navigate(client.url));
|
||||||
|
})(),
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user