这是我的服务人员的“安装”事件代码:
const CACHE_NAME = "static3";
self.addEventListener("install", function (event) {
event.waitUntil(
caches.open(CACHE_NAME).then(function (cache) {
cache.addAll([
"/",
"/blog/",
"/links/",
"/about/",
"/contact/",
"/privacyPolicy/",
"/offline/",
"/css/CP.ttf",
"/css/CPItalic.ttf",
"/css/WS.ttf",
"/css/WSItalic.tff",
"/css/style.css",
"/css/typography.css"
]);
})
);
});
我尝试了几次,但服务人员并未将所有项目存储在缓存中。这是Google Chrome浏览器“应用程序”标签中的屏幕截图:
为什么仅某些项目存储在缓存中?请记住,其他文件的所有路径都是正确的。
我发现了错误。如您所见,我不小心写了"/css/WSItalic.tff"
而不是"/css/WSItalic.ttf"
。这导致“安装”事件拒绝所有项目,因为它会存储所有项目,除非路径中甚至没有单个错误。因此,“安装”事件拒绝了要存储在缓存中的文件,并且仅存储了我正在查看的页面中的获取请求。