为了账号安全,请及时绑定邮箱和手机立即绑定

请问vuex中为什么把把异步操作封装在action,把同步操作放在mutations?

请问vuex中为什么把把异步操作封装在action,把同步操作放在mutations?

一只斗牛犬 2019-09-04 10:06:41
vuex中为什么把把异步操作封装在action,把同步操作放在mutations
查看完整描述

4 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

devtools 追踪状态变化。
事实上在 vuex 里面 actions 只是一个架构性的概念,并不是必须的,说到底只是一个函数,你在里面想干嘛都可以,只要最后触发 mutation 就行。异步竞态怎么处理那是用户自己的事情。vuex 真正限制你的只有 mutation 必须是同步的这一点(在 redux 里面就好像 reducer 必须同步返回下一个状态一样)。
同步的意义在于这样每一个 mutation 执行完成后都可以对应到一个新的状态(和 reducer 一样),这样 devtools 就可以打个 snapshot 存下来,然后就可以随便 time-travel 了。
如果你开着 devtool 调用一个异步的 acti

查看完整回答
反对 回复 2019-09-07
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

vue组件的数据传递应该是单向,永远是向下的,把父组件属性方法传递到子组件。 如果子组件要改变不同的颜色,是应该接受父组件传递进来的props,自己调用自己的方法,把props当个参数来判断来显示什么颜色,而不是让父元素调子组件的方法。

查看完整回答
反对 回复 2019-09-07
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

vue用vuex管理数据,能组件内清除state里的数据吗
组件获取 state 用 vuex 的 getter 组件触发动作用 vuex 的 action 修改 state 用 vuex的 mutation

查看完整回答
反对 回复 2019-09-07
  • 4 回答
  • 0 关注
  • 4039 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信