如何修改Workbox构建的Service Worker默认缓存存储名称?
自定义Workbox预缓存的缓存存储名称
可以修改预缓存的缓存存储名称,只需在调用precacheAndRoute时传入包含cacheName的配置选项即可。
修改后的代码如下:
import { registerRoute, NavigationRoute } from "workbox-routing"; import { precacheAndRoute, createHandlerBoundToURL } from "workbox-precaching"; precacheAndRoute( [ { url: "/index.html", revision: ...autogenerated..., }, { url: "/proxy.html", revision: ...autogenerated..., }, ], { cacheName: "html-assets" // 指定自定义缓存名称 } ); const handler = createHandlerBoundToURL("/index.html"); const navigationRoute = new NavigationRoute(handler, { denylist: [new RegExp("/proxy.html")] }); registerRoute(navigationRoute);
这样修改后,index.html和proxy.html就会被预缓存到名为html-assets的缓存存储中,替代原来默认的workbox-precache-v2-<my domain>名称,同时不会影响原有离线功能和路由逻辑的正常运行。
内容的提问来源于stack exchange,提问作者Alexander Nestorov
相关产品推荐
相关产品推荐

