Web缓存-localStorage

7 篇文章 0 订阅
该博客介绍了一个工具类,用于在浏览器的localStorage中存储key/value对,特别应用于表单数据的缓存。当用户在新增或更新设备信息的表单操作中意外退出时,如果操作类型为'add',未提交的数据会被存储;当提交或组件销毁时,会清除存储的表单数据。localStorage提供setItem、getItem和removeItem方法,用于数据的存取和删除,数据类型仅支持字符串。
摘要由CSDN通过智能技术生成

工具类

const storage = {
  set(key, value) {
    localStorage.setItem(key, value)
  },
  get(key) {
    return localStorage.getItem(key)
  },
  remove(key) {
    localStorage.removeItem(key)
  }
}
export default storage

应用

新增表单意外退出时,缓存表单数据

  mounted () {
    if(this.$route.query.operationType === "add") {
      const device_info = storage.get("device_info") || ''
      if (device_info !== '') {
        this.formData = JSON.parse(device_info)
      }
    }
    if(this.$route.query.operationType === "update") {
      ......
    }
  },
  destroyed () {
    if(this.$route.query.operationType === "add") {
      if(!this.submitFlag){
        storage.set("device_info", JSON.stringify(this.formData))
      }
    }
  },
  
  onSubmit () {
      this.submitFlag = true
      storage.remove("device_info")
  },

浏览器调试位置

在这里插入图片描述

API

  • setItem
  • getItem
  • removeItem
  • clear

总结

  • 允许在浏览器中存储 key/value 对的数据
  • localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。
  • localStorage 属性是只读的。
  • localStorage也遵循同源策略。
  • localStorage 只支持 string 类型的存储。

图片

参考

Window localStorage 属性

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值