From 2a3cc4e6cecfc6dab8b60adf93f7fde898ddc939 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 25 七月 2023 16:36:23 +0800 Subject: [PATCH] 2023-07-25 --- src/api/cacheutils.js | 24 ++++++++++++++++++------ 1 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/api/cacheutils.js b/src/api/cacheutils.js index f175333..bd14fa5 100644 --- a/src/api/cacheutils.js +++ b/src/api/cacheutils.js @@ -7,7 +7,7 @@ */ static openIndexDB (db) { try { - let request = window.indexedDB.open(db, 2) + let request = window.indexedDB.open(db, 3) request.onerror = () => { console.warn('IndexedDB 鍒濆鍖栧け璐ワ紒') } @@ -27,7 +27,7 @@ if (!window.GLOB.IndexDB.objectStoreNames.contains('caches')) { window.GLOB.IndexDB.createObjectStore('caches', { keyPath: 'menuid' }) } - if (window.GLOB.systemType === '' && !window.GLOB.IndexDB.objectStoreNames.contains('funcs')) { + if (!window.GLOB.IndexDB.objectStoreNames.contains('funcs')) { window.GLOB.IndexDB.createObjectStore('funcs', { keyPath: 'id' }) } } @@ -72,6 +72,7 @@ new Promise((resolve) => { let request = window.GLOB.IndexDB.transaction(['configs']).objectStore('configs').openCursor() let menus = [] + let ids = [] request.onerror = () => { resolve(menus) @@ -80,7 +81,10 @@ request.onsuccess = (e) => { let cursor = e.target.result if (cursor) { - menus.push(`'${cursor.value.menuid}','${cursor.value.open_edition || 'mk'}'`) + if (cursor.value.menuid && !ids.includes(cursor.value.menuid)) { + menus.push(`'${cursor.value.menuid}','${cursor.value.open_edition || 'mk'}'`) + ids.push(cursor.value.menuid) + } cursor.continue() } else { resolve(menus) @@ -200,7 +204,7 @@ /** * @description 鑾峰彇IndexedDB涓殑閰嶇疆淇℃伅 */ - static getIndexDBCacheConfig (MenuID) { + static getIndexDBCacheConfig (MenuID, limit) { if (!window.GLOB.IndexDB) return Promise.resolve() return new Promise((resolve, reject) => { @@ -211,7 +215,15 @@ } request.onsuccess = () => { - resolve(request.result) + if (limit && request.result) { + if (request.result.CreateDate > limit) { + resolve(request.result) + } else { + resolve() + } + } else { + resolve(request.result) + } } }) } @@ -230,7 +242,7 @@ request.onsuccess = (e) => { let cursor = e.target.result if (cursor) { - if (cursor.value.CreateDate < date) { + if (cursor.value.CreateDate < date || cursor.value.CreateDate.length === 10) { cursor.delete() } cursor.continue() -- Gitblit v1.8.0