将自定义服务工作者添加到 create-react-app

Dud*_*ude 5 ecmascript-6 reactjs webpack service-worker create-react-app

默认情况下,create-react-app包含的新项目中有一个 Service Worker 脚本。我不需要那个默认值registerServiceWorker.js和默认值service-worker.js(在构建中隐藏和可用),因为我想添加我自己的 Service Worker。我也想用 es6 语法创建我自己的 service worker 代码,所以只在公共文件夹中添加一个“sw.js”并在我的 index.html 中注册它对我来说不是最好的选择。如何使用 构建一些自定义 sw 代码ES6 create-react-app

小智 2

如果您希望在初始生产部署之前禁用内置服务工作人员,请删除对serviceWorkerRegistration.register()from 的调用src/index.js并添加您自己的服务工作人员。

如果您的网站/应用程序已经投入生产,则将其替换为serviceWorkerRegistration.unregister().在用户访问具有 的页面后serviceWorkerRegistration.unregister(),服务工作人员将被卸载,并且可能需要长达 24 小时才能使缓存失效(取决于服务的方式)工人得到服务)

另一种选择是弹出并配置其内置解决方案。

  • 您可能对此包作为临时解决方案感兴趣:https://github.com/bbhlondon/cra-append-sw (2认同)