indexDB根据游标索引

const db = new IndexDB('offlLineDB', getIndexedDBVersionOfNum()) // 数据库名  数据库版本

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数据库打开错误,请联系管理员。')

      }

      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)

          }

        }

      }

    })

  }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容