NavigationPreloadManager: enable() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.

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

メモ: この機能はウェブワーカー内で利用可能です。

enable()NavigationPreloadManager インターフェイスのメソッドで、サービスワーカーが管理するリソースの事前読み込みを有効にするために使用されます。 このメソッドは、undefined で解決するプロミスを返します。

このメソッドは、サービスワーカーの activate イベントハンドラーで呼び出されるべきであり、これにより、fetch イベントハンドラーが発行される前に確実に呼び出されるようになります。

構文

js
enable()

引数

なし。

返値

undefined で解決するプロミス (Promise) です。

例外

InvalidStateError DOMException

この NavigationPreloadManager が属する登録に関連するアクティブなワーカーがない場合。

下記のコードは最初に ServiceWorkerRegistration.navigationPreload の使用に対応していることを確認した後、事前読み込みを有効にする方法を示しています。

js
addEventListener("activate", (event) => {
  event.waitUntil(
    (async () => {
      if (self.registration.navigationPreload) {
        // Enable navigation preloads!
        await self.registration.navigationPreload.enable();
      }
    })(),
  );
});

仕様書

Specification
Service Workers
# dom-navigationpreloadmanager-enable

ブラウザーの互換性

BCD tables only load in the browser

関連情報