分享发现一个小巧的vue存储引擎,用于本地存储太方便了

头像
codetyphon
69阅读2评论

几年前,当我第一次学习vue的时候,就是从todolist开始的。

如今很多年过去了。今天发现一个vue的数据库引擎,可以做本地存储之用。于是,花了几个小时的时间,又重复造了个轮子。使用的是bootstrap-vueUI。

功能: 添加、编辑、删除、自动保存

直接在html里写的,引入的unpkg,没有在本地启动vue。

介绍

lowdb是一款小巧轻便的数据库引擎,支持json、yaml和本地存储。

为什么使用 lowdb 做本地存储?

由于本地存储不能直接存对象,因此还需要进行序列化,很麻烦。而使用 lowdb 则无需再进行处理,直接一股脑丢给它就是了。

如何使用?

1、数据的获取

let todo = db.get('todo')

如果没有数据,则返回undefined

因此,拿到后需要判断一下再赋值

if(todo!=undefined){
    this.list=todo
}

2、数据的保存

db.set('todo', this.list).write()

自动保存

在操作的时候,需要自动保存,这样重新载入网页,数据都在。

核心很简单,就是使用深度监控。只要数组内容发生变化,就会触发。

watch:{
    list:{
        handler:function(newValue,oldValue){
            console.log(newValue)
            this.save()
        },
        deep:true,//数组内容发生变化也监控
    }
}

效果

源码

https://github.com/codetyphon/lowdb_todolist

体验

https://codetyphon.github.io/lowdb_todolist/index.html

分享主题:
收藏
举报
加载中…
精选评论
版块详情

分享

1k 帖子
7k 评论
71 关注
欢迎分享个人工作经历、职场观点、生活体验等
版主
空缺中,申请版主请于站长联系
远程全职推荐

扫码下载应用

下载APP,能及时收到回复或进展