vuex中状态改变但是v-show没起作用

图片描述

图片描述

图片描述

图片描述

点击弹窗里的体验执行Sure 提交到vuex isbool已经为false
但是弹窗不消失
图片描述

这是mutation里面 因为我传东西过来 state里面有data参数赋的值 打印了下 能打印出来应该没啥问题

而且上面getters 里面也获取到了

图片描述

这个是action 这里只是commit

阅读 3.3k
3 个回答

mutation试试这么写state.state_dialog = Object.assign({}, data)
getter 是 state 的计算属性。state 的改变前后应该是基于对象是否突变而进行比较的,前后内存地址没有改变,仍认为是同一个对象,这样就没有触发响应式更新。

var a = {}
var b = a
a === b // true

a.value = 233
a === b // true,同一对象,没有突变

a = {}
a === b // false,突变了

看下你的vuex怎么写的?可以把代码贴出来吗?是不是你在action中的操作和mutation一样直接修改状态了,这样是不行的,action应该是分发mutation

据我所知,以及之前的经验所得,getter获取数据并不分发,是一次性的,尤其getter的元数据是异步获取的时候,getter会直接挂掉。这里建议改成state。

推荐问题