Javascript 应用程序已加载时的PWA更新服务工作程序

Javascript 应用程序已加载时的PWA更新服务工作程序,javascript,updates,service-worker,progressive-web-apps,Javascript,Updates,Service Worker,Progressive Web Apps,我正在构建一个PWA,我正在寻找一种在应用程序已经打开并加载时更新服务人员的方法 例如,用户在手机上打开一次应用程序,然后在白天切换其他应用程序,而不完全关闭PWA 如果我在两者之间上传一个新版本,那么如何更新服务人员 此外,是否有可能在用户使用应用程序时通知服务更新 服务人员是否能够不时自动检查是否上传了新内容?整个应用程序都是通过s3 bucket缓存和服务的 如果您有任何建议,我们将不胜感激。从MDN开始 ServiceWorkerRegistration接口的更新方法尝试更新服务工作者。

我正在构建一个PWA,我正在寻找一种在应用程序已经打开并加载时更新服务人员的方法

例如,用户在手机上打开一次应用程序,然后在白天切换其他应用程序,而不完全关闭PWA

如果我在两者之间上传一个新版本,那么如何更新服务人员

此外,是否有可能在用户使用应用程序时通知服务更新

服务人员是否能够不时自动检查是否上传了新内容?整个应用程序都是通过s3 bucket缓存和服务的

如果您有任何建议,我们将不胜感激。

从MDN开始

ServiceWorkerRegistration接口的更新方法尝试更新服务工作者。它获取工作程序的脚本URL,如果新工作程序与当前工作程序不完全相同,则安装新工作程序。如果前一次提取发生在24小时前,则工作进程的提取将绕过任何浏览器缓存

if(导航器中的“serviceWorker”){
register('/sw test/sw.js',{scope:'sw test'}){
//注册成功了
console.log('注册成功');
button.onclick=函数(){
registration.update();
}
}).catch(函数(错误){
//注册失败
console.log('注册失败,出现'+错误);
});
};