如何用workbox-cli实现"cache then network"策略?

How to implement the "cache then network" strategy with workbox-cli?

如何实现“cache then network" strategy with workbox-cli?

我需要最新的内容而无需离开网站并再次访问它(这是“陈旧而重新验证”策略的行为,如果我理解得很好的话,这是 workbox-cli 中使用的策略)。

而且我需要 workbox-cli,因为它不仅处理 service worker 文件的写入,而且最重要的是它负责每次构建后的缓存重命名,手动重命名会很麻烦。

workbox-cli 有几种不同的使用方式,具体取决于您的配置。

其中一些归结为预缓存和运行时缓存之间的区别。 this blog post.

中有一些关于这种区别的背景知识

如果您使用 workbox-cli 预缓存您的所有内容,并且您希望在检测到任何预缓存内容有更新时自动重新加载您的 Web 应用程序,您可以按照本文中的示例进行操作“Offer a page reload for users”食谱,但无条件调用window.location.reload(),而不是等待用户确认他们要更新。