ServiceWorkerGlobalScope: contentdelete イベント

io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/ja/web/api/content_index_api/index.md)

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

メモ: この機能はサービスワーカー内でのみ利用可能です。

contentdeleteServiceWorkerGlobalScope インターフェイスのイベントで、ユーザーエージェントを通じて索引付けされたコンテンツから項目が削除されたときに発行されます。

このイベントはキャンセル不可で、バブリングしません。

構文

このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

js
addEventListener("contentdelete", (event) => {});

oncontentdelete = (event) => {};

イベント型

イベントプロパティ

以下に挙げたプロパティに加えて、このインターフェイスは親である Event のプロパティを継承しています。

id 読取専用

削除されたコンテンツのインデックスを id で識別する文字列。

以下の例では、contentdelete イベントハンドラーを使用して、削除されたインデックス項目に関連するキャッシュされたコンテンツを削除しています。

js
self.addEventListener("contentdelete", (event) => {
  const deletion = caches
    .open("cache-name")
    .then((cache) =>
      Promise.all([
        cache.delete(`/icon/${event.id}`),
        cache.delete(`/content/${event.id}`),
      ]),
    );
  event.waitUntil(deletion);
});

また、 oncontentdelete プロパティを使用して、イベントハンドラーを設定することもできます。

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

仕様書

Specification
Content Index
# dom-serviceworkerglobalscope-oncontentdelete

ブラウザーの互換性

BCD tables only load in the browser

関連情報