Vue3封装localStorage-基本使用

定义和使用

localStorage 和 sessionStorage 属性允许在浏览器中存储 key/value 对的数据。

localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。

localStorage 属性是只读的。

提示: 如果你只想将数据保存在当前会话中,可以使用 sessionStorage 属性, 该数据对象临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。

原生语法

window.localStorage

保存数据语法:

localStorage.setItem("key", "value");

读取数据语法:

var lastname = localStorage.getItem("key");

删除数据语法:

localStorage.removeItem("key");

Vue3封装localStorage

新建 cache.js 文件

class LocalCache {
  // 添加
  setCath(key: string, value: any) {
    window.localStorage.setItem(key, JSON.stringify(value))
  }
  // 查找
  getCache(key: string) {
    // obj=>sting=>obj
    const value = window.localStorage.getItem(key)
    if (value) {
      return JSON.parse(value)
    }
  }
  // 删除
  deleteCatch(key: string) {
    window.localStorage.removeItem(key)
  }
  // 清理
  clearCache() {
    window.localStorage.clear()
  }
}

export default new LocalCache()

示例

先引入封装好的文件
例:import LocalCache from '@/utils/cache'

查询本地缓存
const obj = reactive({
  name: LocalCache.getCache("name") ?? "",
  password: LocalCache.getCache("password") ?? "",
});
console.log('obj',obj.name);
添加
LocalCache.setCath('name', account.name)
LocalCache.setCath('password', account.password)
删除本地缓存
LocalCache.deleteCatch('name')
LocalCache.deleteCatch('password')

猜你喜欢

转载自blog.csdn.net/H_jrqn/article/details/127744306