vue hooks about LocalStorage

该代码段定义了一个名为useLocalStorage的函数,用于处理浏览器的本地存储。它包括获取、设置和删除本地存储数据的方法。getStorage方法从localStorage获取数据并尝试将其解析为JSON对象。setStorage可以存储单个键值对或者整个对象到本地存储。removeStorage则能删除单一或多个键的缓存数据。
摘要由CSDN通过智能技术生成
// 操作本地缓存
const useLocalStorage = () => {
    
  // 获取本地缓存数据
  const getStorage = (key) => {
    
    let jsonStr = localStorage.getItem(key)

    // 判断获取的数据是否为 json
    if(jsonStr instance String && typeof JSON.parse(jsonStr) === 'object'){
        return JSON.parse(jsonStr)
    }

    return jsonStr;
  };


  // 存储本地缓存数据 key: string / array 必传 , value: 可选参数, 非必传
  const setStorage = (key, value) => {

    // 如果传入的 key 是 object
    if (key instanceof Object) {

      // 遍历对象
      for (let objKey in key) {
        localStorage.setItem(objKey, key[objKey]);
      }

      return;
    }

    // 如果 key 是 string 并且传入了 value 
    if (key instanceof String && value) {
      localStorage.setItem(key, value);
    }
  };


  // 删除缓存, key: string / array
  const removeStorage = (key) => {

    // 如果传入 数组
    if (key instanceof Array) {
      key.forEach((storageKey) => localStorage.removeItem(storageKey));
      return;
    }

    localStorage.removeItem(key);
  };

  return {
    getStorage,
    setStorage,
    removeStorage,
  };
};

export { useLocalStorage };

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值