如何在后台下载和更新 Service Worker?
How can I download and update a service worker in the background?
我正在尝试了解如何使用 Service Worker 更新应用程序。
我目前的想法是这样的:
- 部署新应用 ==> 更改 serviceWorker.js
- 使用实时数据库发送变更通知
- 应用程序触发更新 serviceWorker.js <==== 这可能吗?
- 浏览器下载在后台更改了 service worker
- Service worker 安装完成,通知页面重新加载
- 应用程序显示[请点击更新]消息。
如何在后台更新 Service Worker(第 3 步)?
ServiceWorkerRegistration
object's update()
方法将强制浏览器检查是否有更新的服务工作者脚本可用。例如:
navigator.serviceWorker.register('/sw.js').then(registration => {
window.addEventListener('your-update-event', () => registration.update());
});
我正在尝试了解如何使用 Service Worker 更新应用程序。
我目前的想法是这样的:
- 部署新应用 ==> 更改 serviceWorker.js
- 使用实时数据库发送变更通知
- 应用程序触发更新 serviceWorker.js <==== 这可能吗?
- 浏览器下载在后台更改了 service worker
- Service worker 安装完成,通知页面重新加载
- 应用程序显示[请点击更新]消息。
如何在后台更新 Service Worker(第 3 步)?
ServiceWorkerRegistration
object's update()
方法将强制浏览器检查是否有更新的服务工作者脚本可用。例如:
navigator.serviceWorker.register('/sw.js').then(registration => {
window.addEventListener('your-update-event', () => registration.update());
});