ServiceWorkerGlobalScope: activate イベント

ServiceWorkerGlobalScope インターフェイスの activate イベントは、ServiceWorkerRegistration が新しいアクティブワーカー(ServiceWorkerRegistration.active worker)を取得すると発生します。

バブリング なし
キャンセル 不可
インターフェイス ExtendableEvent
イベントハンドラープロパティ ServiceWorkerGlobalScope.onactivate

次のスニペットは、activate イベントハンドラーを使用してキャッシュをアップグレードする方法を示しています。

globalScope.addEventListener('activate', function(event) {
  var cacheWhitelist = ['v2'];

  event.waitUntil(
    caches.forEach(function(cache, cacheName) {
      if (cacheWhitelist.indexOf(cacheName) == -1) {
        return caches.delete(cacheName);
      }
    })
  );
});

次のように ServiceWorkerGlobalScope.onactivate プロパティを使用してイベントハンドラーを設定することもできます。

globalScope.onactivate = function(event) {
  ...
};

仕様

仕様 状態 コメント
Service Workers
activate の定義
草案

ブラウザーの互換性

BCD tables only load in the browser

関連情報