Vuex

vuex状态自管理应用包含以下几个部分:

  • state,驱动应用的数据源;
  • view,以声明方式将 state 映射到视图;
  • actions,响应在 view 上的用户输入导致的状态变化。

主要包含 state getter mutation action module 五个函数

很多人觉得 mutation action很难分清楚

Action 类似于 mutation,不同在于:

  • Action 提交的是 mutation,而不是直接变更状态。
  • Action 可以包含任意异步操作。
store.commit 提交一个 mutation   Mutation 必须是同步函数

Action 通过 store.dispatch 方法触发

总结就是 Action 内部可以执行异步操作,而 mutation 必须是同步。

所以很多时候我们会在异步操作中用 Action;然后在 Action 调用 commit 提交 mutation 改变state 里面的状态
原文地址:https://www.cnblogs.com/alvin553819/p/10718101.html