监听vuex中变量改变

1.在A页面修改了Vuex中状态。需要在B页面实时进行监听。
2.如何实现?

由于 Vuex 的状态存储本来就是响应式的,从 store 实例中读取状态最简单的方法,就是在计算属性中返回某个状态。

在 B 页面引入以下代码:

computed: {
    myValue() {
        return this.$store.state.someValue
    }
}

此时,当 A 页面通过某种方式更改了 this.$store.state.someValue 的值,B 页面中 myValue 的值便会自动得到更新。

如果题主所指的监听,是要在这个值变化后触发其他动作,则需要在 B 页面加入侦听属性:

watch: {
    myValue: function(newVal, oldVal) {
        //其他业务代码
    }
}

猜你喜欢

转载自my.oschina.net/jamesview/blog/1633399