vue 使用indexDB 简单完整逻辑

1 npm

复制代码
npm install idb

2 代码

javascript 复制代码
<template>
  <div>
    <p>Data: {{ data }}</p>
    <button @click="fetchData">Fetch Data</button>
  </div>
</template>

<script>
import { openDB } from 'idb';

export default {
  data() {
    return {
      data: null
    }
  },
  methods: {
    async fetchData() {
      // 发送第三方请求 url 填写
      const response = await fetch(url);
      const data = await response.json();

      // 将数据存储到 IndexedDB 中
      let db = await openDB('my-store', 1, {

        upgrade(db) {
        
          db.createObjectStore('my-store');
        }
      });
      db = await openDB('my-store', 1);
     )
      const tx = db.transaction('my-store', 'readwrite');
      const store = tx.objectStore('my-store');
      console.log('store', store)
      await store.put(data, 'my-data');
      await tx.done;

      // 从 IndexedDB 中获取数据
      const tx2 = db.transaction('my-store');
      const data2 = await tx2.objectStore('my-store').get('my-data');
      await tx2.done;

      // 更新数据
      this.data = data2;
      console.log(data2)
    }
  }
}
</script>
相关推荐
ZengLiangYi16 小时前
批量导入 1000 条对话的性能优化实战
javascript·后端·架构
竹林81816 小时前
用 wagmi v2 + viem 监听合约事件时踩的坑,我花了两天才把"遗漏事件"修好
javascript
用户0595401744616 小时前
把待办应用从Electron换成Tauri,内存占用狂降90%,打包体积仅5MB
前端·css
假如让我当三天老蒯16 小时前
回归基本功!前端的解构赋值、扩展运算符、剩余参数
前端·面试
小花酱酱16 小时前
QQ群里只有你一个人?邪门歪道破局之路——AstrBot
javascript
bonechips17 小时前
JS 数组指南:从内存原理到二维矩阵
前端·javascript
mONESY17 小时前
前端零基础精讲:Canvas3D、CSS3D、文档流、定位全方位复盘
javascript
亿元程序员17 小时前
美术妹子让我给模型加个描边,我差点把Cocos卸了
前端