引入AsyncStorage
import { AsyncStorage } from 'react-native';
设置与获取示例(其它操作将属性名替换掉,比如:setItem)
设置本地存储:
const onLeft = async () => {
try {
await AsyncStorage.setItem(
'@MySuperStore:key',
'ZJL1112222333'
);
console.log('存储')
} catch (error) {
// 输出错误
}
}
获取设置的本地存储:
const onRight = async () => {
try {
const value = await AsyncStorage.getItem('@MySuperStore:key');
if (value !== null) {
console.log('value获取 ===>', value);
}
} catch (error) {
// 输出错误
}
}
操作方法
1.根据键来获取值,获取的结果会放在回调函数中
getItem(key: string, callback:(error, result));
2.根据键来设置值
setItem(key: string, value: string, callback:(error));
3.根据键来移除项
removeItem(key: string, callback:(error));
4.合并现有值和输入值
mergeItem(key: string, value: string, callback:(error));
5.清除所有的项目
clear(callback:(error));
6.获取所有的键
getAllKeys(callback:(error, keys));
7.清除所有进行中的查询操作
flushGetRequests(); //直接调用
8.获取多项,其中 keys 是字符串数组,比如: ['k1', 'k2']
const keys = ['k1','k2'];
multiGet(keys, callback:(errors, result));
9.设置多项,其中 keyValuePairs 是字符串的二维数组,比如: [['k1', 'val1'], ['k2', 'val2']]
const keyValuePairs = [['k1', 'val1'], ['k2', 'val2']];
multiSet(keyValuePairs, callback:(errors));
10.删除多项,其中 keys 是字符串数组,比如: ['k1', 'k2']
const keys = ['k1','k2'];
multiRemove(keys, callback:(errors));
11.多个键值合并,其中 keyValuePairs 是字符串的二维数组,比如: [['k1', 'val1'], ['k2', 'val2']]
const keyValuePairs = [['k1', 'val1'], ['k2', 'val2']];
multiMerge(keyValuePairs, callback:(errors));