vuex商城中添加收货地址然后储存在store中,不用刷新页面自动渲染数据

新手上路,请多包涵

vuex中的store数据存取的问题

添加收货地址,存在store中,添加完毕之后回到当前页面,为什么数据自动读取收货地址中的信息,需要刷新一下?

1.

clipboard.png

clipboard.png

// 编辑地址(mutations.js)

[type.SET_ADDRESS](state,data){
    localStorage.setItem("address",JSON.stringify(data));
}

// 点击保存之后把数据存在store中

this.$store.commit("SET_ADDRESS",addDate);

地址已经存在store中,在浏览器中的local storage也可以看到,回到一下图片中的页面

clipboard.png

用computed去取store的数据

// 获取地址

computed:{
  addList(){
       return this.$store.state.address
  },
}   

可以获取到,但是为什么页面还是不更新数据呢?我需要手动去刷新才能得到以下效果

clipboard.png

说下我的思路:store是根据这个是否有地址去实时更新store数据的,然后我查了一下computed只有在页面加载进来的时候才加载数据,怎样通过我的数据一变动就去更新computed的数据呢?

阅读 5.1k
2 个回答

1.computed不是也没加载的时候执行,是依赖有变更就会执行
2.你可以用watch

vuex的getter就是作用在Computed上的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题