记录一下今天踩到的坑

今天写项目的时候,在一个组件的 div 中用了 v-show='show' 绑定了vuex中的一个数据,下面代码是刚开始写的从 vuex 中拿数据

setup(){
  let store = useStore();
  let show = store.state.show;
}

然后发现,这个数据不是响应式的,即使数据在vuex中改变了,并且在console.log中输出也是改变过后的,但是在页面中显示还是原来的值。

后来通过万能的百度发现,原来获取 vuex 中的值一定要用计算属性获取,如下:

    let store = useStore();
    let show = computed(()=>{
      return store.state.show;
    })

这样改过之后,数据就变成响应式了,在页面中也能正常显示了

Logo

前往低代码交流专区

更多推荐