我是Workbox的新手,我已经设置了用于预缓存初始shell /和index.php的基本工作盒代码。当我第一次访问该URL时,链接显示在workbox-precache中,但是当我脱机时它不会加载。我已经尝试了/和/index.php,但都没有加载。当我第二次访问该链接时,/被添加到工作箱运行时缓存中,此后该链接开始脱机工作。我无法弄清楚为什么即使正确缓存后仍无法访问该链接。
where
答案 0 :(得分:0)
我不确定setCatchHandler
是否按预期工作。您可以尝试在自己的registerRoute
块中添加捕获处理程序吗?下一行类似的内容:
workbox.routing.registerRoute(/\/$, async ({ event }) => {
try {
return await workbox.strategies.networkOnly().handle({ event });
} catch (error) {
return caches.match('/offline.html');
}
});