RN 数据持久化存储服务API

时间:2021-08-12 00:34:10

一些数据信息需要存储在手机内存中,比如用户的登录名密码 token啥的,所以这就需要了来存这些信息

在RN中 采用了AsyncStorage是一个简单的、异步的、持久化的Key-Value存储系统,它对于App来说是全局性的!

RN中文网封装了一个存储组件   https://github.com/sunnylqm/react-native-storage/blob/master/README-CHN.md

这个组件的好处就是可以设定存储数据的时间长度 对于设置token的有效期 那就再好不过了!哈哈

但是这里说的是RN原生的AsyncStorage

数据:增删改查  

在RN中一般是建议使用ES6中的Promise机制 好处是使得程序便于处理一些异常,更有条理话:

1.增加数据
普通:

AsyncStorage.setItem("name","张三")

Promise

AsyncStorage.setItem("name","张三")
.then(
()=>{
// 这里处理存储成功
}
)
.catch( (error)=>{
//错误的处理
}
)

这里需要注意的是 存储的数据 key-value都必须是字符型的数据。如果不是,那么程序中断 采用catch的方式 可以有效的捕捉错误,从而

避免了程序的中断(爆红)当然你可能说采用try-catch的方式来处理

try{
AsyncStorage.setItem("name","xieyusheng")
}
catch(error){
console.log(error)
}

这种方式是捕获不到错误的信息,而是爆红哦!

存储多个数据:multiSet();

读取数据  getItem("name") 通过key来获取。 如果忘记是哪个key。可以使用getAllKeys来获取全部的Key

其他的类似了 详情可以参考官网或者中文网 建议使用封装好的哈