Vuex中this.$store.commit() 和 this.$store.dispatch() 方法的区别
两个方法其实很相似,关键在于一个是同步,一个是异步commit: 同步操作this.$store.commit('方法名',值) //存储this.$store.state.'方法名' //取值dispatch: 异步操作this.$store.dispatch('方法名',值) //存储this.$store.getters.'方法名' //取值当操作行为中含有异步操作,比如向后台发送请求获取数
·
两个方法其实很相似,关键在于一个是同步,一个是异步
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
更多推荐
已为社区贡献1条内容
所有评论(0)