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>
相关推荐
+VX:Fegn089521 分钟前
计算机毕业设计|基于springboot + vue物业管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
咕噜咕噜啦啦8 小时前
Vue3响应式开发
前端·javascript·vue.js
huangql5209 小时前
布局单位与设计稿换算:从「看清」到「量准」
前端
牛奶9 小时前
你不知道的JS(下):深入编程
前端·javascript·电子书
牛奶9 小时前
你不知道的JS(下):深入JS(下)
前端·javascript·电子书
牛奶10 小时前
你不知道的JS(下):总结与未来
前端·javascript·电子书
牛奶10 小时前
你不知道的JS(下):深入JS(上)
前端·javascript·电子书
CappuccinoRose11 小时前
HTML语法学习文档(五)
前端·html·html5·表单
硅基动力AI12 小时前
如何判断一个关键词值不值得做?
java·前端·数据库
yq19820430115613 小时前
使用Django构建视频解析网站 从Naver视频下载器看Web开发全流程
前端·django·音视频