React Native AsyncStorage本地存储工具类
网络编程 2021-07-04 17:32www.168986.cn编程入门
这篇文章主要为大家分享了React Native AsyncStorage本地存储工具类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
利用react-native组件AsyncStorage,通过promise,保存本地数据,具体内容如下
import {AsyncStorage} from 'react-native'; export default class StorageUtil { / 保存一个Json对象 @param key @param value @param callback / static async saveJsonObject(key, value) { return await this.saveString(key, JSON.stringify(value)); } / 获取一个Json对象 @param key @param defaultObject / static async getJsonObject(key, defaultObject) { let result=null; try{ result=await this.getString(key,null); result=await JSON.parse(result); }catch (err){ if(defaultObject){ return Promise.resolve(defaultObject); }else{ return Promise.reject(err); } } return result; } / 保存一个值 @param key @param value / static async saveString(key, value) { if (key != null && value != null) { //Key 与Value 都不为空 try { await AsyncStorage.setItem(key, value) } catch (err) { return Promise.reject(err) } return Promise.resolve(true); } else { return Promise.reject({"msg": "Key and value can not be null"}); } } / 获取一个值 @param key @param defaultValue / static async getString(key, defaultValue) { let result = null; let noDataError = {"msg": "No value found !"}; if (key != null) { result = await AsyncStorage.getItem(key); // console.log('get string result',result,defaultValue); return result ? result : defaultValue!=null ? defaultValue : Promise.reject(noDataError); } else { if (defaultValue) { return Promise.resolve(defaultValue); } else { return Promise.reject(noDataError); } } } / 移除一个值 @param key / static async remove(key) { let result = true; try { result = await AsyncStorage.removeItem(key); } catch (err) { return Promise.reject(err) } return result; } / 获取所有已存储 / static async getAllKeys() { let result=true; try { result = await AsyncStorage.getAllKeys(); } catch (err) { return Promise.reject(err) } return result; } }
外界调用
保存
StorageUtil.saveJsonObject(KEY_LOCAL_USER_INFO, user);
读取
StorageUtil.getJsonObject(KEY_LOCAL_USER_INFO).then(data=>{console.log(data))}
清除
StorageUtil.remove(KEY_LOCAL_USER_INFO)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指