1.0.20 • Published 3 years ago
easy-async-storage v1.0.20
1.简介
最初目的
在项目开发中,有少数情况会有在存入Storage的同时获取该storage的逻辑,如果存入数据的函数为异步函数(比如请求了一个用户信息的接口,特别是在登录后),这样的逻辑就会导致原生的getItem函数获取不到,easy-async-storage库将getItem变为异步函数,返回一个Promise对象,让你可以像调用一个网络请求一样去调用storage。
目前已有功能
- 使用面向对象思想对存储方式进行二次封装,让 Storage 操作能够更加简便快捷,不需要考虑某条数据存在于
localStorage还是sessionStorage。
TODO
- 加密存取
2.Install
npm install easy-async-storage3.Use
eStorage()的暴露方式类似Vue Composition API
const { keep, set, get, asyncGet, check } = eStorage();或
const est = eStorage();3.1 Get Storage
获取存储数据,调用对象的get方法,返回类型为Promise
est.get(key:string):Promise<any>;est.get(key:string).then(res=>{
// res即为获取到的value
}).catch(err=>{
// 未获取到的操作
})3.2 Async Get Storage
est.asyncGet(key:string,timeout?:number)调用异步获取方法,参数如下
key:stringStorage 的 key,必传timeout:number超时时间,若在超时时间到达后仍旧没有获取到值,则在reject中返回undefined,非必需,默认 1000(ms)
3.3 Set Storage
与原生存储方式相似,但是value参数强制使用string,存在类型检查,若不符合则抛出异常。
set()返回一个EStorage对象,支持链式调用
est.set(key: string, value: string);3.4 Set Local Storage
easy-async-storage在使用set()方法时,底层默认操作对象为sessionStorage,如有对localStorage进行存储的需求,则可以使用keep()方法
keep()返回一个EStorage对象,支持链式调用
est.keep().set(key: string, value: string);注意:您在进行get、asyncGet、check操作时,并不一定需要调用keep()
3.5 Check
查找当前存储中是否存在某一字段
使用:
est.check(key: string).then(res=>{
// 存储存在的操作
}).catch(()=>{
// 存储不存在的操作
});返回的数据类型:
Promise<CheckResult>
interface CheckResult {
status: boolean;
target?: EStorage;
}status:boolean存在true不存在falsetarget?:EStorage存在返回一个EStorage对象,支持链式调用;不存在则没有该字段。