vue2 watch监听sessionstorage 监听不到变化啊
时间: 2023-11-19 17:55:24 浏览: 180
详解vuex结合localstorage动态监听storage的变化
5星 · 资源好评率100%
可以尝试使用第三方库vue-ls来监听sessionStorage的变化。首先需要安装vue-ls,然后在main.js中引入并配置。接着在需要监听的组件中使用watch监听sessionStorage的变化即可。
代码示例:
```javascript
// 安装vue-ls
npm install vue-ls --save
// main.js中引入并配置
import Vue from 'vue'
import VueStorage from 'vue-ls'
Vue.use(VueStorage, {
namespace: 'vuejs__', // key prefix
name: 'ls', // name variable Vue.[ls] or this.[$ls],
storage: 'session' // storage name session, local, memory
})
// 组件中使用watch监听sessionStorage的变化
export default {
data() {
return {
role: this.$ls.get('role') // 初始化时获取sessionStorage中的值
}
},
mounted() {
// 监听sessionStorage的变化
this.$watch('$ls.role', (val) => {
this.role = val
})
}
}
```
阅读全文