监听localStroage字段变化

1、src--->utils-->添加watchLocalStorage.js文件

export default function dispatchEventStroage() {
	const signSetItem = localStorage.setItem
	localStorage.setItem = function (key, val) {
		let setEvent = new Event('setItemEvent')
		setEvent.key = key
		setEvent.newValue = val
		window.dispatchEvent(setEvent)
		// eslint-disable-next-line prefer-rest-params
		signSetItem.apply(this, arguments)
	}
}

2、main.js中添加

import dispatchEventStroage from './utils/watchLocalStorage'
Vue.use(dispatchEventStroage);

3、监听

 mounted() {
    const that = this;
    window.addEventListener("setItemEvent", function (e) {
      if (e.key === "user_obj") {
        修改要监听的字段...
        监听到处理的方法
       
      }
    });
   
  },

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: localstorage和sessionstorage是HTML5中新增的两个Web存储API,用于在浏览器端存储数据。 localstorage是一种持久化存储方式,数据存储在浏览器中,即使关闭浏览器或电脑,数据也不会丢失。它可以存储大量数据,但是只能存储字符串类型的数据。 sessionstorage是一种会话存储方式,数据存储在浏览器中,但是只在当前会话中有效。当关闭浏览器或者当前会话结束时,数据会被清除。它也只能存储字符串类型的数据。 两者的使用方法类似,都是通过setItem、getItem、removeItem等方法进行操作。但是需要注意的是,由于存储的数据是明文存储在浏览器中,所以不要存储敏感信息。 ### 回答2: 本地存储(localStorage)和会话存储(sessionStorage)是HTML5提供的两种新的Web数据存储机制。 localStorage 是 HTML5 新增的持久化数据储存技术,它可以让你的应用从浏览器中存储数据,即使用户关闭浏览器之后依然可以保存数据。在同一个浏览器中,localStorage 存储的数据是可以被不同的页面所共享的。localStorage 存储的数据可以长期存储,适用于存储一些重要的信息,如用户的偏好设置等。 sessionStorage 和 localStorage 非常相似,区别在于 sessionStorage 存储的数据只存在于会话期间,当用户关闭浏览器或者选项卡时会被删除。如果用户重新打开同一浏览器或选项卡,将无法访问之前存储的数据。sessionStorage 主要用于存储同一会话期间所需的数据。比如,模态框中代码常常使用 sessionStorage 来临时存储一些数据,以便在模态框关闭后能够保持数据的一致性。 使用 localStorage 和 sessionStorage 都十分简单。首先需要检查当前浏览器是否支持这两种 API。接下来使用 JavaScript 实现数据的存储和访问即可。通常情况下,将数据存储到 localStorage 和 sessionStorage 中时,用字符串 JSON.stringify() 把 JavaScript 对象转换成 JSON 字符串,然后再存储到本地存储即可。访问时需要使用 JSON.parse() 把字符串转换成一个 JavaScript 对象,便于调用和操作。 总之,localStorage 和 sessionStorage 都是很重要的数据存储方式,开发者可以根据应用的需求选择合适的存储方式。 ### 回答3: localstroage和sessionstroage是HTML5中提供的两种本地存储方式,相较于传统的cookie,两者有着更大的存储空间和更简单的操作方式。 localstroage是一种持久化存储方式,一旦数据存储在localstroage中,即使关闭浏览器或电脑,数据依然能够保持,请注意这里的“持久化”并不是指一直存储数据,而是一直到指定时间才会过期。它支持键值对的存储方式,可以通过JS代码对其进行读取、新增、修改和删除操作。localstroage的存储容量相对于cookie来说更大,一般为5MB左右。 sessionstroage是一种会话存储方式,只要浏览器处于打开状态,数据就会一直保持有效。当关闭浏览器后,数据就被清空了。sessionstroage同样支持键值对的存储方式,并且与localstroage不同的是,即使用户开启了多个窗口或标签页,它们之间的sessionstroage也都是独立的。sessionstroage的存储容量也与localstroage类似,一般为5MB左右。 这两种本地存储方式的使用场景也不尽相同。localstroage适用于需要长期存储数据的场合,比如存储用户设置的偏好等;而sessionstroage则更适用于诸如购物车等需要暂存数据的场合。 需要注意的是,这两种存储方式虽然会将数据存储在用户的本地磁盘上,但是其中的数据并不是加密的,所以不要在其中存储敏感信息,以免引发安全问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值