feat(图片缓存管理文件): 最大限制更改为200MB和200张

This commit is contained in:
hzj 2026-02-11 15:43:31 +08:00
parent c7c987cc1a
commit d4b80f0ea5

View File

@ -11,8 +11,8 @@ class ImageCacheManager {
this.imageCacheName = `likei-images-v${this.currentImageVersion}` // OSS图片
this.assetCacheName = `likei-assets-v${this.currentImageVersion}` // 本地assets
this.maxCacheItems = 100 // 最大缓存数量100张
this.maxCacheSize = 100 * 1024 * 1024 // 最大缓存大小100MB
this.maxCacheItems = 200 // 最大缓存数量100张
this.maxCacheSize = 200 * 1024 * 1024 // 最大缓存大小100MB
this.pendingRequests = new Map() // 请求去重的关键
@ -80,7 +80,7 @@ class ImageCacheManager {
case 'all':
// 清除所有相关缓存(除了动态内容)
cachesToClear = cacheNames.filter(
(name) => name.startsWith('likei-images-v') || name.startsWith('likei-assets-v')
(name) => name.startsWith('likei-images-v') || name.startsWith('likei-assets-v'),
)
break
default:
@ -124,7 +124,7 @@ class ImageCacheManager {
else {
const isImageVersionChanged = this.isVersionChanged(
cachedImageVersion || '1.0.0',
IMAGE_CACHE_VERSION.version
IMAGE_CACHE_VERSION.version,
)
// 图片版本变化:根据配置清除指定类型的缓存
@ -255,7 +255,7 @@ class ImageCacheManager {
const cacheNames = await caches.keys()
const oldImageCaches = cacheNames.filter(
(name) =>
name.startsWith('likei-images-v') && !name.includes(`v${this.currentImageVersion}`) // 排除当前版本的缓存
name.startsWith('likei-images-v') && !name.includes(`v${this.currentImageVersion}`), // 排除当前版本的缓存
)
console.log('正在清除旧的OSS图片缓存:', oldImageCaches)
@ -273,7 +273,7 @@ class ImageCacheManager {
const cacheNames = await caches.keys()
const oldAssetCaches = cacheNames.filter(
(name) =>
name.startsWith('likei-assets-v') && !name.includes(`v${this.currentImageVersion}`) // 排除当前版本的缓存
name.startsWith('likei-assets-v') && !name.includes(`v${this.currentImageVersion}`), // 排除当前版本的缓存
)
console.log('正在清除旧的本地assets缓存:', oldAssetCaches)
@ -290,7 +290,7 @@ class ImageCacheManager {
try {
const cacheNames = await caches.keys()
const allCaches = cacheNames.filter(
(name) => name.startsWith('likei-images-v') || name.startsWith('likei-assets-v')
(name) => name.startsWith('likei-images-v') || name.startsWith('likei-assets-v'),
)
console.log('正在清除所有图片缓存:', allCaches)
@ -309,7 +309,7 @@ class ImageCacheManager {
const containsAssets = normalizedUrl.includes('/assets/')
const containsOssH5 = normalizedUrl.includes('/oss/h5/')
const startsWithOss = normalizedUrl.startsWith(
'https://tkm-likei.oss-ap-southeast-1.aliyuncs.com/h5/'
'https://tkm-likei.oss-ap-southeast-1.aliyuncs.com/h5/',
)
// 只缓存三种类型的资源
@ -444,7 +444,7 @@ class ImageCacheManager {
new Request(normalizedUrl, {
mode: 'cors',
credentials: 'omit',
})
}),
)
if (!cachedResponse) {