当前位置: 首页 > 工具软件 > store.js > 使用案例 >

Vuex中this.$store.commit() 和 this.$store.dispatch() 方法的区别

薛博艺
2023-12-01

两个方法其实很相似,关键在于一个是同步,一个是异步
commit: 同步操作

this.$store.commit('方法名',值) //存储
this.$store.state.'方法名' //取值

dispatch: 异步操作

this.$store.dispatch('方法名',值) //存储
this.$store.getters.'方法名' //取值

当操作行为中含有异步操作,比如向后台发送请求获取数据,就需要使用action的dispatch去完成了,其他使用commit即可.

其他了解:

commit => mutations, 用来触发同步操作的方法.

dispatch => actions, 用来触发异步操作的方法.

在store中注册了mutation和action

在组件中用dispatch调用action,用commit调用mutation

 类似资料: