Spec-Zone.ru › Web APIs

Клиенты: метод claim()

Базовая Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с апреля 2018 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Примечание: Эта функция доступна только в рабочих процессах.

Метод claim() интерфейса Clients позволяет активному рабочему процессу установить себя в качестве controller для всех клиентов в пределах его scope. Это запускает событие controllerchange на navigator.serviceWorker в любых клиентах, которые попадают под контроль этого рабочего процесса.

Когда рабочий процесс первоначально зарегистрирован, страницы не будут его использовать, пока они не будут загружены повторно. Метод claim() заставляет эти страницы быть управляемыми сразу. Обратите внимание, что это приведет к тому, что ваш рабочий процесс будет управлять страницами, которые обычно загружались через сеть или, возможно, через другой рабочий процесс.

Синтаксис

claim()

Параметры

Нет.

Возвращаемое значение

Объект Promise, который разрешается в undefined.

Примеры

В следующем примере используется claim() внутри обработчика события activate рабочего процесса, чтобы клиенты, загруженные в том же объеме, не нуждались в перезагрузке перед тем, как их запросы будут обработаны этим рабочим процессом.

self.addEventListener("activate", (event) => {
  event.waitUntil(clients.claim());
});

Спецификации

Спецификация
Рабочие процессы
# clients-claim

Совместимость браузеров

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
claim 42 17 44 29 11.1 42 44 29 11.3 4.0 42

См. также

  • Использование рабочих процессов
  • Жизненный цикл рабочего процесса
  • self.skipWaiting() - пропустить фазу ожидания рабочего процесса

© 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/Clients/claim

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API