流浪のwolf

卷帝

导航

封装setItem 和 getItem 本地存储

store.js 文件 按需导出setItem 和 getItem 函数 ;在utils文件里面 ;

 

 

export const setItem = (key, value) => {
  // 复杂数据需要序列化
  if (typeof value === "object") {
    localStorage.setItem(key, JSON.stringify(value));
  } else {
    // 简单数据直接i存储
    localStorage.setItem(key, value);
    // localStorage.setItem(key, JSON.stringify(value));
  }
};
// 如果有字符串没有序列化 就去反序列化 会报错
export const getItem = (key) => {
  const data = localStorage.getItem(key);
  try {
    // 报错说明data是一个没有经过序列化的数据,也就不需要反序列化了
    return JSON.parse(data);
  } catch (err) {
    // 报错说明 data 是普通数据 取出来直接返回即可不需要反序列化操作
    return data;
  }
};

posted on 2022-10-11 15:40  流浪のwolf  阅读(61)  评论(0编辑  收藏  举报