indexDB根據(jù)游標(biāo)索引

const db = new IndexDB('offlLineDB', getIndexedDBVersionOfNum()) // 數(shù)據(jù)庫名? 數(shù)據(jù)庫版本

db.getIndexDataByCursor('basic_DB_assembly', keyWord, code)

--------------------------------------------------------------------------------------------

getIndexDataByCursor(storeName, storeIndex, storeKey) {

? ? const si = storeIndex

? ? const sk = storeKey

? ? return new Promise((resolve, reject) => {

? ? ? const request = indexedDB.open(this.dbName, this.version)

? ? ? request.onerror = function() {

? ? ? ? reject('IndexedDB數(shù)據(jù)庫打開錯(cuò)誤,請(qǐng)聯(lián)系管理員。')

? ? ? }

? ? ? request.onsuccess = function(event) {

? ? ? ? const IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange

? ? ? ? const onlyKeyRange = IDBKeyRange.only(sk)

? ? ? ? const result = event.target.result

? ? ? ? const objectStore = result.transaction(storeName).objectStore(storeName).index(si).openCursor(

? ? ? ? ? onlyKeyRange)

? ? ? ? const dataList = []

? ? ? ? objectStore.onsuccess = function(event) {

? ? ? ? ? const cursor = event.target.result

? ? ? ? ? if (cursor) {

? ? ? ? ? ? dataList.push(cursor.value)

? ? ? ? ? ? cursor.continue()

? ? ? ? ? } else {

? ? ? ? ? ? resolve(dataList)

? ? ? ? ? }

? ? ? ? }

? ? ? }

? ? })

? }

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容