indexedDB數據庫實踐

export default {
  indexedDB: window.indexedDB || window.webkitindexedDB || window.msIndexedDB,

  openDb(dbName, version = 1, db, newStore, cb) {
    const request = this.indexedDB.open(dbName, version);
    request.onerror = function(e) {
      console.error("打開數據庫錯誤", e);
    };
    request.onsuccess = function(e) {
      console.log("打開數據庫成功", e);
      db = e.target.result;
      if (cb) cb(db);
    };

    // 建表
    request.onupgradeneeded = function(e) {
      var mdb = e.target.result;
      console.log(mdb);
      if (!mdb.objectStoreNames.contains(newStore.name)) {
        const objStore = mdb.createObjectStore(newStore.name, {
          // keyPath: newStore.key
          autoIncrement: true
        });
        const tableMap = {
          name: "",
          amount: 0,
          platform: "",
          num: 0,
          money: 0,
          date: "",
          method: 0
        };
        Object.keys(tableMap).forEach(key =>
          objStore.createIndex(key, k
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章