elegant-storage

Supports the use of indexeddb to store data, support setting expiration time, manual failure, cache data grouping

Usage no npm install needed!

<script type="module">
  import elegantStorage from 'https://cdn.skypack.dev/elegant-storage';
</script>

README

优雅的基于indexedDB前端缓存工具

🌰 主要解决的问题是:

  1. 较大数据量缓存
  2. 支持缓存失效设置
  3. 缓存分组与批量设置失效

命令介绍

🍎 下载

npm i --save elegant-storage

🍏 初始化

import ElegantStorage from 'elegant-storage'

const storage = new ElegantStorage()

🍑 设置缓存
set(key, value, options)

  • key 缓存键
  • value 缓存内容
  • options 缓存相关设置
storage.set('people', {name: 'walker'}, {
  expires: 6000, // 单位秒
  group: 'card'  // 缓存分组
}).then(res => console.log('设置完成'))

🍐 获取缓存
get(key)

storage.get('people')
  .then(res => console.log('people is:', res))

🍌 删除缓存
remove(key)

storage.remove('people')
  .then(res => console.log('删除成功'))

🎃 以分组批量删除缓存
removeGroup(groupName)

storage.removeGroup('card')
  .then(() => console.log('已删除card分组'))

🍓 删除所有
removeAll()

storage.removeAll()
  .then(() => console.log('已删除全部'))

🍇 获取缓存长度
length()

storage.length()
  .then(res => console.log(res))

🍉 获取缓存keys
keys()

storage.keys()
  .then(keys => console.log(keys))