- 在RN开发中,持久化存储数据,可以使用
AsyncStorage
,对原生的API进行了一层封装 AsyncStorage
是一个简单的、异步的、持久化的Key-Value
存储系统,它对于App
来说是全局性的
AsyncStorage
原理和使用
AsyncStorage
存储数据,在iOS中,底层会把数据保存到沙盒中的Documents
中,并生成manifest.json
文件。保存的数据都在manifest.json
中。AsyncStorage
删除数据,也仅仅是删除manifest.json
文件中的数据,并不是删除manifest.json
文件- 唯有
clear
方法是将文件删除
存储
1 | static setItem(key: string, value: string, callback?: ?(error: ?Error) => void) |
- 注意:
AsyncStorage
只能存储字符串,需要把对象转换为字符串才行 - 具体使用
1 | //key值 |
读取
1 | static getItem(key: string, callback?: ?(error: ?Error, result: ?string) => void) |
使用方法
1 | //读取 |
删除
1 | static removeItem(key: string, callback?: ?(error: ?Error) => void) |
函数用法
1 | //删除 |
其他用法
1 | static mergeItem(key: string, value: string, callback?: ?(error: ?Error) => void) |