美文网首页
基于Dexie操作indexDB数据库

基于Dexie操作indexDB数据库

作者: Prince_0716 | 来源:发表于2022-02-07 15:00 被阅读0次

    什么是Dexie?

    这是官网的一句话翻译过来就是IndexedDB 的一个最小化包装(A Minimalistic Wrapper for IndexedDB)

    Dexie使用本机IndexedDB API解决了三个主要问题:

    模棱两可的错误处理
    不好查询
    代码复杂性
    有使用过indexDB的同学就知道其查询语句的麻烦特别是多条件查询的时候
    这是Dexie的官网https://dexie.org/

    安装及使用

    1.安装

    模块化开发下可以使用npm/cnpm/yarn安装

    npm install dexie
    

    2.使用

    简单的例子

    //模块化开发下需要引入该组件
    import Dexie from 'dexie'
    //创建一个数据库 若数据库已存在则为打开 
    //打开数据库时,会判断当前version值是否大于已经存在的version值,若大于则会upgrade即升到最高版本
    var db = new Dexie("test_db");
    
    db.version(1).stores({
         student: 'name,age'
     });
     db.open()
    //写入一些数据
    db.student.put({name: "小明", age: 18}).then (function(){
        //当数据存储完成后 我们可以读取它
        return db.student.get('小明');
    }).then(function (data) {
        console.log("我是小明,今年 " + data.age);
    }).catch(function(error) {
       //最后别忘了抓住任何可能发生在上面的代码块。
       console.log("error: " + error);
       db.close()
    });
    db.close()
    

    API

    1.创建数据库

    //注意:不要像在SQL中那样声明所有列。只声明要索引的属性,即要在where(…)查询中使用的属性。
    var db = new Dexie("MyDatabase");
    db.version(1).stores({
        friends: "++id, name, age, *tags",
        gameSessions: "id, score"
    });
    

    2.语法

    ++ 自动递增主键
    & 唯一主键

    • 多条目索引
    • 复合索引

    相关文章

      网友评论

          本文标题:基于Dexie操作indexDB数据库

          本文链接:https://www.haomeiwen.com/subject/rhvukrtx.html