ServiceWorkerRegistration.update()
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.
update()
は ServiceWorkerRegistration
インターフェイスのメソッドで、サービスワーカーの更新を試みます。 ワーカーのスクリプト URL を読み取り、新しいワーカーが現在のワーカーとバイト単位で同一でない場合は、新しいワーカーをインストールします。 前回の読み取りが 24 時間以上前であった場合、ワーカーの読み取り時にブラウザーのキャッシュをバイパスします。
メモ: この機能はウェブワーカーで利用できます。
構文
js
update()
引数
なし。
返値
ServiceWorkerRegistration
オブジェクトで解決する Promise
です。
例
次の簡単な例では、サービスワーカーの例を登録し、次にイベントハンドラーをボタンに追加して、必要に応じてサービスワーカーを明示的に更新できるようにします。
js
if ("serviceWorker" in navigator) {
navigator.serviceWorker
.register("/sw.js", { scope: "/" })
.then((registration) => {
// 登録成功
console.log("登録に成功しました。");
button.onclick = () => {
registration.update();
};
})
.catch((error) => {
// 登録に失敗
console.log(`登録に失敗しました: ${error}`);
});
}
仕様書
Specification |
---|
Service Workers # service-worker-registration-update |
ブラウザーの互換性
BCD tables only load in the browser