微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何为生成的 Service Worker 禁用 workbox-webpack-plugin 的警告

如何解决如何为生成的 Service Worker 禁用 workbox-webpack-plugin 的警告

我使用 GenerateSw 类作为我的工人一代。 它工作正常,但我需要为离线页面预先缓存一些 webpack 未处理的资源,所以我使用:

additionalManifestEntries: [
    '/offline','https://static.express/img/laksjhdaskldfjlaljsafsp/connection-lost.svg'
]

但我正面临此警告,即使 mode 属性设置为 prod

enter image description here

问题:我可以隐藏它们吗?

解决方法

您可以通过切换到具有 url: 属性和 revision: null 属性的对象来避免这些警告,以表明它们已经根据其 URL 进行了唯一修订。

additionalManifestEntries: [
  {url: '/offline',revision: null},{url: 'https://static.express/img/.../connection-lost.svg',]

但是...如果您这样做,并且您的网址中实际上并不包含任何唯一的修订信息,那么您的用户最终将无限期地“卡住”一个旧副本,例如 /offline ,即使您对 /offline 进行更改并重新部署。这就是 Workbox 让它“很难”做到这一点的原因。

缓存其他 URL 的更好方法是设置运行时缓存路由,该路由将对它们使用特定策略,并可能使用 these techniques 来“预热”该策略缓存。例如,对这些网址使用 StaleWhileRevalidate 策略将确保它们最终会得到更新。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。