首页 > 解决方案 > 如何缓存 webpack 的资产并排除 index.html?

问题描述

我想优化我的 SPA 以缓存所有 webpack 的资产,以便它们在下次重新加载时加载得更快。

我不需要离线功能,我希望用户在重新加载页面后始终能够获得新版本,没有“新内容可用;请刷新”。信息。

据我了解,Webpack 在每个文件的名称中都包含哈希,因此文件名从一个版本到另一个版本是“唯一的”。所以我的策略是缓存除index.html. 因此,当用户点击重新加载时,他总是index.html从服务器获取,然后服务工作人员为已加载的文件提供缓存。

简而言之,我希望复制一个简单的缓存,如标头 Cache-Control。

我应该使用workbox-webpack-pluginandGenerateSW(config)方法吗?如何将其配置为仅从index.html缓存中排除并包含其他所有内容?

标签: workboxworkbox-webpack-plugin

解决方案


workbox-webpack-plugin具有可用于排除的排除选项index.html

更多信息可以在这里找到:https ://developers.google.com/web/tools/workbox/reference-docs/latest/module-workbox-webpack-plugin.GenerateSW#GenerateSW


推荐阅读