我正在尝试使用Workbox缓存整个页面,但它根据我的要求不工作我想要缓存而不是html只想缓存整个页面用Image,Js,Css目前它只缓存html
workbox.routing.registerRoute('/about.html', new workbox.strategies.NetworkFirst());
以上代码我用于页面缓存
答案 0 :(得分:2)
页面上使用的每个子资源(图像,JavaScript,CSS等)都会产生新的HTTP请求。您注册的路由将与每个HTTP请求的URL进行匹配。目前,您注册的路线将与特定的网址路径名'/about.html'
匹配。
如果您想要缓存您的webapp所做的每个同源请求,您可以调整路由逻辑以使用RegExp
通配符,例如:
workbox.routing.registerRoute(
new RegExp('/.*'),
new workbox.strategies.NetworkFirst()
);
如果您想缩小缓存内容的范围,可以进一步修改RegExp
,或者针对不同类型的网址使用不同的策略。