如何在 Javascript 中删除按名称兑现 - pwa
How to delete cashing by name in Javascript - pwa
我正在使用的 PWA 应用程序需要删除一个条目。
以下代码用于检查缓存。
self.addEventListener('activate', function (event) {
console.log('[Service Worker] Activating Service Worker ....', event);
event.waitUntil(
caches.keys()
.then(function (keyList) {
console.log('[Service Worker] keyList ....', keyList);
return Promise.all(keyList.map(function (key) {
if (key !== CACHE_STATIC_NAME && key !== CACHE_DYNAMIC_NAME) {
console.log('[Service Worker] Removing old cache.', key);
return caches.delete(key);
}
}));
})
);
return self.clients.claim();
});
我需要根据特定缓存键删除特定缓存中的条目。
这是一个辅助函数,它接收缓存名称和缓存名称中缓存键的 URL,并删除与该缓存键对应的 Response
。
async function deleteCacheKeyFromCache(cacheName, cacheKey) {
const cache = await caches.open(cacheName);
await cache.delete(cacheKey);
}
// Use it like:
// await deleteCacheKeyFromCache('my-cache', '/index.html');
如果 cacheName
不存在,或者 cacheKey
不存在于 cacheName
中,那么该函数实际上是一个空操作。
我正在使用的 PWA 应用程序需要删除一个条目。
以下代码用于检查缓存。
self.addEventListener('activate', function (event) {
console.log('[Service Worker] Activating Service Worker ....', event);
event.waitUntil(
caches.keys()
.then(function (keyList) {
console.log('[Service Worker] keyList ....', keyList);
return Promise.all(keyList.map(function (key) {
if (key !== CACHE_STATIC_NAME && key !== CACHE_DYNAMIC_NAME) {
console.log('[Service Worker] Removing old cache.', key);
return caches.delete(key);
}
}));
})
);
return self.clients.claim();
});
我需要根据特定缓存键删除特定缓存中的条目。
这是一个辅助函数,它接收缓存名称和缓存名称中缓存键的 URL,并删除与该缓存键对应的 Response
。
async function deleteCacheKeyFromCache(cacheName, cacheKey) {
const cache = await caches.open(cacheName);
await cache.delete(cacheKey);
}
// Use it like:
// await deleteCacheKeyFromCache('my-cache', '/index.html');
如果 cacheName
不存在,或者 cacheKey
不存在于 cacheName
中,那么该函数实际上是一个空操作。