From 7920a5a939053049c0d81e5b796ad37f9d31871a Mon Sep 17 00:00:00 2001 From: Lei OT Date: Thu, 4 Sep 2025 10:34:18 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20indexDB=20=E6=B6=88=E6=81=AF=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/indexedDB.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/utils/indexedDB.js b/src/utils/indexedDB.js index 5c2197c..1864c47 100644 --- a/src/utils/indexedDB.js +++ b/src/utils/indexedDB.js @@ -107,7 +107,7 @@ export const clearWebsocketLog = () => { } } -export const createIndexedDBStore = (tables, database) => { +export const createIndexedDBStore = (tables, database, keySet = {keyPath: 'key' }) => { var open = indexedDB.open(database, INDEXED_DB_VERSION) // console.trace('createIndexedDBStore'); open.onupgradeneeded = function () { @@ -116,7 +116,7 @@ export const createIndexedDBStore = (tables, database) => { // 数据库是否存在 for (const table of tables) { if (!db.objectStoreNames.contains(table)) { - var store = db.createObjectStore(table, { keyPath: 'key' }) + var store = db.createObjectStore(table, keySet) store.createIndex('timestamp', 'timestamp', { unique: false }) } else { const objectStore = open.transaction.objectStore(table) @@ -189,9 +189,9 @@ export const readIndexDB = (keys=null, table, database) => { var store = db.createObjectStore(table, { keyPath: 'key' }) store.createIndex('timestamp', 'timestamp', { unique: false }) } else { - const logStore = openRequest.transaction.objectStore(table) - if (!logStore.indexNames.contains('timestamp')) { - logStore.createIndex('timestamp', 'timestamp', { unique: false }) + const store = openRequest.transaction.objectStore(table) + if (!store.indexNames.contains('timestamp')) { + store.createIndex('timestamp', 'timestamp', { unique: false }) } } } @@ -362,7 +362,7 @@ export const deleteIndexDBbyKey = (keys=null, table, database) => { }; function cleanOldData(database, storeNames=[], dateKey = 'timestamp', keySet = { keyPath: 'key' }) { - createIndexedDBStore(storeNames, database); + createIndexedDBStore(storeNames, database, keySet); return function (daysToKeep = 7) { return new Promise((resolve, reject) => { let deletedCount = 0