反应当地AsyncStorage本地存储工具类

  

利用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本地存储工具类