NavigationPreloadManager: enable() 方法

Baseline 已廣泛支援

此功能已經非常成熟,可在多種裝置和瀏覽器版本上使用。自 2022 年 4 月以來,它已在各大瀏覽器中得到支援。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

注意:此功能在 Web Workers 中可用。

NavigationPreloadManager 介面的 enable() 方法用於啟用由 Service Worker 管理的資源的預載入。它返回一個解析為 undefined 的 Promise。

該方法應在 Service Worker 的 activate 事件處理程式中呼叫,以確保在任何 fetch 事件處理程式觸發之前呼叫它。

語法

js
enable()

引數

無。

返回值

一個 Promise,它會解析為 undefined

異常

InvalidStateError DOMException

與此 NavigationPreloadManager 所屬的註冊關聯的沒有活動工作執行緒。

示例

下面的程式碼展示瞭如何啟用預載入,在此之前,首先使用 ServiceWorkerRegistration.navigationPreload 測試是否支援該功能。

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

規範

規範
Service Workers
# dom-navigationpreloadmanager-enable

瀏覽器相容性

另見

NavigationPreloadManager.disable()