它本质是给任意 storage 对象套一层 Proxy ,主要做了这几件事:
[ol]
[/ol]
安装:
npm install stokado
最小示例:
import { createProxyStorage } from 'stokado'
const storage = createProxyStorage(localStorage)
// 类型保留:取出来还是 number / Date ,不是字符串
storage.count = 0
storage.count === 0 // true
storage.createdAt = new Date('2024-01-01')
storage.createdAt.getTime() // 正常可用
// 同标签页响应式订阅
storage.on('token', (newVal, oldVal) => {
console.log('token changed:', oldVal, '->', newVal)
})
// 过期 & 一次性值
storage.setItem('token', 'abc', { expires: Date.now() + 3600_000 })
storage.setItem('flash', 'data', { disposable: true })
storage.flash // 'data'
storage.flash // undefined (读过一次即失效)
仓库: https://github.com/KID-joker/stokado

