【发布时间】:2022-01-09 16:19:04
【问题描述】:
我正在开发一个 HTML5 PWA,并希望有一个“先网络,然后缓存”布局,这样当用户访问 PWA 时,它会拉下最新版本,但如果他们处于离线状态,它会使用缓存。
请问我需要如何修改下面的代码?
const assets = [
"/",
"/index.html",
"/about.html",
"/assets/css/main.css",
"/images/logo.png",
"/images/logo.svg",
]
self.addEventListener("install", installEvent => {
installEvent.waitUntil(
caches.open(staticCacheName).then(cache => {
cache.addAll(assets)
})
)
})
self.addEventListener("fetch", fetchEvent => {
fetchEvent.respondWith(
caches.match(fetchEvent.request).then(res => {
return res || fetch(fetchEvent.request)
})
)
})
缓存已创建,但一旦 PWA 保存到主页,它始终使用缓存。
【问题讨论】:
标签: html caching progressive-web-apps service-worker