Php PWA Symfony缓存工作盒

Php PWA Symfony缓存工作盒,php,symfony,progressive-web-apps,service-worker,workbox,Php,Symfony,Progressive Web Apps,Service Worker,Workbox,我在symfony应用程序上实现了workbox。然后我创建了我的服务人员。 我想缓存我正在浏览的所有页面,但缓存不会被创建,我只有缓存“workbox-broash-v2…” 这是我的服务人员: importScripts('https://storage.googleapis.com/workbox-cdn/releases/6.0.2/workbox-sw.js'); 从“工作箱策略”导入{NetworkFirst、NetworkOnly、StaleWhileRevalidate、Ca

我在symfony应用程序上实现了workbox。然后我创建了我的服务人员。 我想缓存我正在浏览的所有页面,但缓存不会被创建,我只有缓存“workbox-broash-v2…”

这是我的服务人员:

importScripts('https://storage.googleapis.com/workbox-cdn/releases/6.0.2/workbox-sw.js');
从“工作箱策略”导入{NetworkFirst、NetworkOnly、StaleWhileRevalidate、CacheFirst};
从“工作盒预处理”导入{precacheAndRoute,matchPrecache};
从“工作盒路由”导入{setCatchHandler};
从“workbox后台同步”导入{BackgroundSyncPlugin};
从“工作盒路由”导入{registerRoute};
从“工作盒可缓存响应”导入{CacheableResponsePlugin};
控制台日志(“来自Sw的测试_1”);
//部队建设
setConfig({debug:true});
self.addEventListener('install',函数(事件){
自我skipWaiting();
});
self.addEventListener('activate',()=>{
clients.claim();
});
//使用网络优先策略缓存页面导航(html)
登记线(
//检查请求是否为新页面的导航
({request})=>request.mode=='navigate',
//使用网络优先缓存策略
新陈腐腐腐酸盐({
//将所有缓存文件放入名为“pages”的缓存中
cacheName:“页面”,
插件:[
//确保只缓存导致200状态的请求
新的CachableResponsePlugin({
状态:[200],
}),
],
}),
);
//使用过时的While重新验证策略缓存CSS、JS和Web Worker请求
登记线(
//检查请求的目的地是样式表的样式、JavaScript的脚本还是web工作者的工作者
({request})=>
request.destination==='style'||
request.destination==“脚本”||
request.destination===“worker”,
//使用过时的同时重新验证缓存策略
新网络优先({
//将所有缓存文件放入名为“资产”的缓存中
cacheName:'资产',
插件:[
//确保只缓存导致200状态的请求
新的CachableResponsePlugin({
状态:[200],
}),
],
}),
);
前切安德鲁特([
{url:“sw.js”,修订版:“7895”},
{url:“repo.js”,修订版:“7895”},
{url:“/home”,修订版:“7895”},
{url:“/home/create”,修订版:“7895”},
], {
cleanUrls:false,
IgnoreUrlParameters匹配:[/.*/],
目录索引:null,
});

预开舱单(自开舱单)您正在调用precacheAndRoute()两次


如果您使用的是workbox,那么应该让workbox-config.js生成uu_WB_MANIFEST

谢谢,但这不是问题所在,即使我去掉其中一个precacheAndRoute(),仍然不起作用