workbox v5 - 如何对服务工作者进行版本控制?

workbox v5 - how to version service worker?

在 v4 中,我们可以将 precacheManifestFilename 与 workbox webpack 插件一起使用,在我们的清单名称中放置一个版本,该版本被导入到 SW 中,从而对其进行版本控制。现在清单已内联并删除了选项,那么对 SW 进行版本控制的新方法是什么?我能想到一些在缩小后仍然存在的方法,但它们看起来很老套。我们应该对缓存名称进行版本控制吗??

shouldn't version 您的服务人员 filename/URL。

如果您的任何 webpack 资产在 service worker 部署之间发生变化,存储在主 service worker 文件中的预缓存清单中的内联信息将得到更新。当浏览器逐字节检查 Service Worker 文件中的新内容时,更新后的内联清单将触发 update flow.

这会给你预期的行为。

(这也是预缓存清单在历史上与非 webpack Workbox 构建工具一起工作的方式,这些工具始终将清单内联到顶级服务工作者文件中。)