Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建React应用程序-修改serviceWorker以轮询新更新?_Javascript_Reactjs_Service Worker_Create React App_Progressive Web Apps - Fatal编程技术网

Javascript 创建React应用程序-修改serviceWorker以轮询新更新?

Javascript 创建React应用程序-修改serviceWorker以轮询新更新?,javascript,reactjs,service-worker,create-react-app,progressive-web-apps,Javascript,Reactjs,Service Worker,Create React App,Progressive Web Apps,我正在为我的SPA添加所需的功能。我们有一些用户在很长一段时间内将他们的标签打开给我们的应用程序。我们还推出了频繁的更新,有时一天5倍,因为我们是预收入。我想知道是否有可能修改随Create React App一起安装的serviceWorker,使其可能每10分钟运行一次轮询循环,以轮询应用程序的新更新,而不是仅在初始页面加载时进行 这样,使选项卡保持打开状态的用户可以接收更新通知,而无需刷新 以前是否有人取得过类似的成就,并且知道我如何将其应用到CRA服务人员中?找到了答案!在registe

我正在为我的SPA添加所需的功能。我们有一些用户在很长一段时间内将他们的标签打开给我们的应用程序。我们还推出了频繁的更新,有时一天5倍,因为我们是预收入。我想知道是否有可能修改随Create React App一起安装的serviceWorker,使其可能每10分钟运行一次轮询循环,以轮询应用程序的新更新,而不是仅在初始页面加载时进行

这样,使选项卡保持打开状态的用户可以接收更新通知,而无需刷新

以前是否有人取得过类似的成就,并且知道我如何将其应用到CRA服务人员中?

找到了答案!在registerServiceWorker.js文件中,我在navigator.serviceWorker.register函数的回调中添加了一个简单的setInterval:

// poll for live updates to the serviceWorker
pollingLoopInterval = setInterval(async () => {
    await registration.update();
}, POLLING_LOOP_MS);
轻松点