これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

ServiceWorker インターフェイスの読み込みプロパティである state は service workerの現在の状態を表す文字列を返します。それは次のいずれかです: installing, installed, activating, activated, redundant

構文

someURL = ServiceWorker.state 

ServiceWorkerState 定義 (仕様を見てください)

このコードスニペットはservice worker registration-events sample (live demo)から持ってきています。コードは ServiceWorker.state のあらゆる変更をリッスンしてその値を返します。

var serviceWorker;
if (registration.installing) {
  serviceWorker = registration.installing;
  document.querySelector('#kind').textContent = 'installing';
} else if (registration.waiting) {
  serviceWorker = registration.waiting;
  document.querySelector('#kind').textContent = 'waiting';
} else if (registration.active) {
  serviceWorker = registration.active;
  document.querySelector('#kind').textContent = 'active';
}

if (serviceWorker) {
  logState(serviceWorker.state);
  serviceWorker.addEventListener('statechange', function(e) {
  logState(e.target.state);
  });
}

仕様

仕様書 策定状況 コメント
Service Workers
state の定義
草案 初期定義

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応40

17

161

442 なし2711.1
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応4040 ?442711.14.0

1. From version 16: this feature is behind the Enable service workers preference.

2. Service workers (and Push) have been disabled in the Firefox 45 and 52 Extended Support Releases (ESR.)

ドキュメントのタグと貢献者

このページの貢献者: Uemmra3
最終更新者: Uemmra3,