diff --git a/web/js/index.js b/web/js/index.js index e8fb47c..7aae7da 100644 --- a/web/js/index.js +++ b/web/js/index.js @@ -107,8 +107,9 @@ async function registerSW() { console.log('Service Worker 安装成功:', event); const newSWVersion = await wb.messageSW({ type: 'GET_VERSION' }); if (newSWVersion !== oldSWVersion) { + await clearCache(); alert(`新版本 ${newSWVersion} 已就绪,刷新后即可体验 !`); - window.location.reload(true); + window.location.reload(); } }); @@ -163,6 +164,25 @@ function hideLoading() { loadingEle.classList.add('hidden'); } +async function clearCache() { + // del storage + localStorage.clear(); + sessionStorage.clear(); + // del sw + const cacheKeys = await caches.keys(); + for (const cacheKey of cacheKeys) { + await caches.open(cacheKey).then(async (cache) => { + const requests = await cache.keys(); + return await Promise.all( + requests.map((request) => { + console.log(`del cache : `, request.url); + return cache.delete(request); + }) + ); + }); + } +} + (function () { var config = { cookLoc: {} }; sj_evt.bind( @@ -217,22 +237,7 @@ function hideLoading() { // del cookie setCookie(userCookieName, '', -1); setCookie(randIpCookieName, '', -1); - // del storage - localStorage.clear(); - sessionStorage.clear(); - // del sw - const cacheKeys = await caches.keys(); - for (const cacheKey of cacheKeys) { - await caches.open(cacheKey).then(async (cache) => { - const requests = await cache.keys(); - return await Promise.all( - requests.map((request) => { - console.log(`del cache : `, request.url); - return cache.delete(request); - }) - ); - }); - } + await clearCache(); chatLoginBgEle.style.display = 'none'; window.location.reload(); }; diff --git a/web/sw.js b/web/sw.js index 4be41b9..847724d 100644 --- a/web/sw.js +++ b/web/sw.js @@ -1,7 +1,7 @@ // 引入workbox 框架 importScripts('./js/sw/workbox-sw.js'); -const SW_VERSION = 'v1.4.0'; +const SW_VERSION = 'v1.4.1'; const CACHE_PREFIX = 'BingAI'; workbox.setConfig({ debug: false, logLevel: 'warn' }); @@ -56,7 +56,7 @@ workbox.precaching.precacheAndRoute([ }, { url: '/web/js/index.js', - revision: '2023.05.06.17', + revision: '2023.05.08', }, // html {