NavigationPreloadManager: метод getState()
Базовая Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с апреля 2018 года.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.
Примечание: Эта функция доступна в Web Workers.
Метод getState() интерфейса NavigationPreloadManager возвращает Promise, который разрешается в объект с свойствами, указывающими, включен ли предварительный загрузчик и какое значение будет отправлено в HTTP-заголовке Service-Worker-Navigation-Preload.
Синтаксис
getState()
Параметры
Нет.
Возвращаемое значение
A Promise, который разрешается с объектом, имеющим следующие свойства:
enabled-
trueесли предварительная загрузка включена, иfalseв противном случае. headerValue-
Строка, содержащая значение, которое будет отправлено в HTTP-заголовке
Service-Worker-Navigation-Preloadпосле предварительной загрузкиfetch(). По умолчанию этоtrue, если значение не было изменено с помощьюNavigationPreloadManager.setHeaderValue().
Исключения
-
InvalidStateErrorDOMException -
Нет активного обработчика событий, связанного с регистрацией, к которой принадлежит этот
NavigationPreloadManager.
Примеры
Код ниже демонстрирует запрос текущего состояния, выполненный после готовности сервисного обработчика событий.
navigator.serviceWorker.ready
.then((registration) => registration.navigationPreload.getState())
.then((state) => {
console.log(state.enabled); // boolean
console.log(state.headerValue); // string
})
.catch((e) =>
console.error(`NavigationPreloadManager not supported: ${e.message}`),
);
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
getState |
59 | 18 | 99 | 46 | 15.4 | 59 | 99 | 43 | 15.4 | 7.0 | 59 |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/getState