From 3c8be565fb712b02f0a5035a468f7e9cc0e270c5 Mon Sep 17 00:00:00 2001 From: wangfukang <15630117759@163.com> Date: Sun, 12 Jul 2026 17:54:38 +0800 Subject: [PATCH] 1 --- pages/index/index.vue | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/pages/index/index.vue b/pages/index/index.vue index 7e3f8b6..62b0586 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1396,8 +1396,24 @@ saveHomeAdImageCache(cache) { uni.setStorageSync(HOME_AD_IMAGE_CACHE_KEY, cache) }, + isSavedFileExists(filePath) { + if (!filePath || filePath.indexOf('__tmp__') !== -1) return false + try { + const fs = (uni.getFileSystemManager && uni.getFileSystemManager()) + || (typeof wx !== 'undefined' && wx.getFileSystemManager ? wx.getFileSystemManager() : null) + if (fs && fs.accessSync) { + fs.accessSync(filePath) + return true + } + } catch (e) { + return false + } + return true + }, isHomeAdImageCacheValid(cacheItem) { - return !!(cacheItem && cacheItem.path && cacheItem.path.indexOf('__tmp__') === -1 && Date.now() - Number(cacheItem.savedAt || 0) < HOME_AD_IMAGE_CACHE_TTL) + return !!(cacheItem + && Date.now() - Number(cacheItem.savedAt || 0) < HOME_AD_IMAGE_CACHE_TTL + && this.isSavedFileExists(cacheItem.path)) }, applyCachedAdImages(mallAds) { const cache = this.getHomeAdImageCache() @@ -1416,6 +1432,9 @@ item.adDisplayImage = cacheItem.path return } + if (cacheItem && cacheItem.path) { + delete cache[imageUrl] + } this.cacheHomeAdImage(imageUrl) }) this.pruneHomeAdImageCache(cache, activeUrls) @@ -1429,9 +1448,13 @@ this.homeMenuIconImages[key] = cacheItem.path return } + if (cacheItem && cacheItem.path) { + delete cache[imageUrl] + } this.homeMenuIconImages[key] = '' this.cacheHomeMenuIcon(key, imageUrl) }) + this.saveHomeAdImageCache(cache) }, cacheHomeMenuIcon(key, imageUrl) { if (homeAdImageDownloading[imageUrl]) return