ServiceWorkerGlobalScope: activate event - Web APIs | MDN (original) (raw)
Syntax
Use the event name in methods like addEventListener(), or set an event handler property.
addEventListener("activate", (event) => { })
onactivate = (event) => { }
Event type
An ExtendableEvent. Inherits from Event.
Event properties
Doesn't implement any specific properties, but inherits properties from its parent, Event.
Examples
The following snippet shows how you could use an activate event handler to upgrade a cache.
self.addEventListener("activate", (event) => {
const cacheAllowlist = ["v2"];
event.waitUntil(
caches.keys().then((cacheNames) =>
Promise.all(
cacheNames.map((cacheName) => {
if (!cacheAllowlist.includes(cacheName)) {
return caches.delete(cacheName);
}
return undefined;
}),
),
),
);
});
You can also set up the event handler using the onactivate property:
self.onactivate = (event) => {
// …
};
Specifications
| Specification |
|---|
| Service Workers Nightly # service-worker-global-scope-activate-event |
| Service Workers Nightly # dom-serviceworkerglobalscope-onactivate |