Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

ServiceWorkerGlobalScope: activate Event

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit April 2018 browserübergreifend verfügbar.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist nur in Service Workers verfügbar.

Das activate-Ereignis der ServiceWorkerGlobalScope-Schnittstelle wird ausgelöst, wenn eine ServiceWorkerRegistration einen neuen ServiceWorkerRegistration.active Worker erhält.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht weitergegeben.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder legen Sie eine Ereignishandlereigenschaft fest.

js
addEventListener("activate", (event) => { })

onactivate = (event) => { }

Ereignistyp

Ein ExtendableEvent. Erbt von Event.

Event ExtendableEvent

Ereigniseigenschaften

Implementiert keine spezifischen Eigenschaften, erbt jedoch Eigenschaften von seinem Elternteil, Event.

Beispiele

Das folgende Beispiel zeigt, wie Sie einen activate-Ereignishandler verwenden könnten, um einen Cache zu aktualisieren.

js
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;
        }),
      ),
    ),
  );
});

Sie können den Ereignishandler auch mit der onactivate-Eigenschaft einrichten:

js
self.onactivate = (event) => {
  // …
};

Spezifikationen

Spezifikation
Service Workers Nightly
# service-worker-global-scope-activate-event
Service Workers Nightly
# dom-serviceworkerglobalscope-onactivate

Browser-Kompatibilität

Siehe auch