- 基本思路是创建一个事务,先找到想要修改的数据主体,然后在更新该数据主体内容 。事务创建逻辑相同,并在创建之后调用事务的 get 和 put 操作 。
- 删除数据库中的数据
- 调用 delete 接口,传入指定的 id 即可 。
? 从上面的例子中可以看出,每一次操作需要至少三行代码才能完成,而且需要一直维护 DB 的对象引用,避免它被回收,这样子开发代码膨胀得太厉害,所以我们在业务中引入其他类库来减少代码量
- LocalForage
- 可以指定数据存储方案,默认依次为 IndexedDB、WebSQL、LocalStorage,意味着当前 IndexedDB 失效可以有兜底措施 。
- API 简化为 CRUD ( getItem、removeItem、setItem、clear )
- 库大小为 475b
- Pouchdb
- API 简化为 put、get、remove,基于 promise 来检查回收错误
- 有较好的错误日志机制,如失败,冲突等等,方便调试
- 库大小为 255b
结束语
在业务开发中,我们都会碰到或多或少的本地存储需求,本文介绍了其中一种存储方案 IndexedDB 的简单实践 。就我们的应用场景来看,IndexedDB 的适用面还是很广的 。考虑到 IE10 也可以支持,把它实践在实际项目中应该是没有问题的 。
文章首发于:https://www.zoo.team/article/indexeddb
【IndexedDB 是什么】
推荐阅读
- 靠街的房子怎么选 靠街面的房子好不好
- 还在用非正版的FTP Server?建议用windows server 2019部署FTP吧
- Linux下配置SVN的bash脚本封装
- 产检血糖高怎么办?
- 母乳乳头裂开了怎么办
- 梦见旧棉花被子芯 梦见棉花被子芯沾在自己身上
- 梦见自己的母亲去世了自己伤心的哭 梦见自己的母亲去世又复活是什么预兆
- 宝宝摸着烫但体温不高是什么原因
- 胎儿血管瘤的形成原因是什么?
- 梦见腿上烂了一块肉 梦见自己腿上的肉烂了是什么意思