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>
相关推荐
treesforest20 分钟前
前端表单提效实践:基于IP地理位置实现国家区号智能预填
前端·网络协议·tcp/ip·ip定位·ip属地
用户2986985301422 分钟前
React 中 Word 文档转图片的实践方案
前端·javascript·react.js
Csvn22 分钟前
异步并发控制:手写并发池、竞态防护与取消的完整方案
前端·javascript
csuzhucong24 分钟前
二十一 - 四十阶魔方
javascript·css·html
专业抄代码选手30 分钟前
06|双缓冲与 Commit:让 Fiber 支持第二次渲染
前端·javascript·react.js
涛涛ing31 分钟前
4.8K Star!一套规则让 AI 帮你写出“像人写的”前端代码
前端
万物智能34 分钟前
OpenHarmony源码树解剖—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
前端·后端
天才熊猫君36 分钟前
通用虚拟滚动表格行拖拽排序:从思路到完整实现
前端·javascript
hh95038 分钟前
Agent Plan × DeepSeek Harness:角色 Prompt 驱动的 Agent 分工优化与协作质量实验
java·前端·人工智能·prompt·adg·agent plan·adg成都社区
xiaominlaopodaren40 分钟前
three.js最小地图运行时(九):TileKey 线框与 cursor 坐标探针
javascript·gis·three.js