利用react-native组件AsyncStorage,通过承诺,保存本地数据,具体内容如下
从“react-native”进口{AsyncStorage}; 出口的默认类StorageUtil {/* * *保存一个Json对象 * @param关键 * @param价值 * @param回调 */静态异步saveJsonObject(关键字,值){ 返回等待。saveString(关键JSON.stringify(值)); }/* * *获取一个Json对象 * @param关键 * @param defaultObject */静态异步getJsonObject(关键,defaultObject) { 让结果=零; 尝试{ 结果=等待this.getString(键,null); 结果=等待JSON.parse(结果); }捕捉(err) { 如果(defaultObject) { 返回Promise.resolve (defaultObject); 其他}{ 返回Promise.reject (err); } } 返回结果; }/* * *保存一个值 * @param关键 * @param价值 */静态异步saveString(关键字,值){ 如果(钥匙!=零,,价值!=null) {//键与值都不为空 尝试{ 等待AsyncStorage。setItem(关键字,值) }捕捉(err) { 返回Promise.reject(错) } 返回Promise.resolve(真正的); 其他}{ 回报的承诺。拒绝({“味精”:“键和值不能为空"}); } }/* * *获取一个值 * @param关键 * @param defaultValue */静态异步getString(关键,defaultValue) { 让结果=零; 让noDataError={“味精”:“没有发现价值!”}; 如果(关键!=null) { 结果=等待AsyncStorage.getItem(关键);//控制台。日志(得到字符串的结果,因此,defaultValue); 返回结果& # 63;结果:defaultValue !=null & # 63;defaultValue: Promise.reject (noDataError); 其他}{ 如果(defaultValue) { 返回Promise.resolve (defaultValue); 其他}{ 返回Promise.reject (noDataError); } } }/* * *移除一个值 * @param关键 */静态异步删除(关键){ 让结果=true; 尝试{ 结果=等待AsyncStorage.removeItem(关键); }捕捉(err) { 返回Promise.reject(错) } 返回结果; }/* * *获取所有已存储 */静态异步getAllKeys () { 让结果=true; 尝试{ 结果=等待AsyncStorage.getAllKeys (); }捕捉(err) { 返回Promise.reject(错) } 返回结果; } } >之前<强>外界调用强>
保存
StorageUtil。saveJsonObject (KEY_LOCAL_USER_INFO、用户);读取
StorageUtil.getJsonObject (KEY_LOCAL_USER_INFO) (https://www.yisu.com/zixun/data=> {console.log(数据)}清除
StorageUtil.remove (KEY_LOCAL_USER_INFO) >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
反应当地AsyncStorage本地存储工具类