【发布时间】:2019-08-27 18:23:53
【问题描述】:
我有一个复杂的应用程序,它可以在离线时正常运行,并在它重新在线时进行同步。唯一不“同步”的是应用程序本身。
我知道如何在“安装”新版本时收到消息,但我不知道如何告诉 Workbox 检查更新。我想要相当于:
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw-test/sw.js', {scope: 'sw-test'}).then(function(registration) {
// registration worked
console.log('Registration succeeded.');
button.onclick = function() {
registration.update(); // <=== THIS WITH Workbox
}
}).catch(function(error) {
// registration failed
console.log('Registration failed with ' + error);
});
};
[编辑] 在 github 上找到这个 https://github.com/GoogleChrome/workbox/blob/master/packages/workbox-window/src/Workbox.ts#L193
但截至 2019 年 8 月,TypeScript 类型不同步。
// Very recent change in Workbox
await wb.update()
// Or
const reg = wb.register()
// ...
reg.update()
【问题讨论】:
-
我的回答对你有帮助吗?
-
????我在某处找到了不同的答案,但您的答案是正确的。
-
哦,这很有趣。请分享答案。我很想知道。
标签: javascript progressive-web-apps workbox