如何监视vuex,state中某个状态的变化

832 阅读1分钟

监视vuex,state中某个状态的变化

  1. 解决问题的思路是通过 vue 的 computed计算属性将state中要监视的数据取出来,然后通过 watch监视属性监视其变化,以实现某些操作
  2. 如我们要监视 state中 的 todos,当todos发生变化时将它更新到本地存储就可以通过下面的代码来实现
computed: {
    todos() {
        return this.$store.state.todos;
    }
},

 watch: {
    // 监视todoListModule.todos,当发生变化时将todos重新写入本地存储
    todos: {
        deep:true,
        handler(value) {
            window.localStorage.setItem('todos_key', JSON.stringify(value));
        }
    }
}