我正在向我的SPA添加一个请求的功能。我们有一些用户很长一段时间都让我们的应用程序打开他们的选项卡。我们还推送频繁的更新(有时一天5次,因为我们是预收款)。我想知道是否可以修改随Create-React-App一起安装的serviceWorker,以运行轮询循环(可能每隔10分钟)来轮询应用程序的新更新,而不是仅在初始页面加载时轮询。
这样,保持选项卡打开的用户可以接收更新通知,而无需刷新。
以前有没有人实现过类似的东西,并且知道我如何将其实现到CRA serviceWorker中?
发布于 2019-09-18 22:47:52
想明白了!在registerServiceWorker.js
文件中,我在navigator.serviceWorker.register()
函数的回调中添加了一个简单的setInterval:
// poll for live updates to the serviceWorker
pollingLoopInterval = setInterval(async () => {
await registration.update();
}, POLLING_LOOP_MS);
简单!
https://stackoverflow.com/questions/57810978
复制