1.在A页面修改了Vuex中状态。需要在B页面实时进行监听。
2.如何实现?
computed: {
isOpened() {
return this.$store.getters.sidebar.opened;
},
},
监听getters.sidebar.opened
import { mapGetters } from 'vuex'
computed: {
...mapGetters({
auth: 'auth'
})
},
watch: {
auth: function(val,oldVal){
//业务代码
},
6 回答3.2k 阅读
2 回答12.6k 阅读✓ 已解决
5 回答7.1k 阅读✓ 已解决
5 回答8.2k 阅读
2 回答10.3k 阅读✓ 已解决
2 回答10.4k 阅读✓ 已解决
1 回答5.1k 阅读✓ 已解决
由于
Vuex
的状态存储本来就是响应式的,从store
实例中读取状态最简单的方法,就是在计算属性
中返回某个状态。在
B 页面
引入以下代码:此时,当
A 页面
通过某种方式更改了this.$store.state.someValue
的值,B 页面
中myValue
的值便会自动得到更新。如果题主所指的监听,是要在这个值变化后触发其他动作,则需要在
B 页面
加入侦听属性: