dispatch:含有异步操作,例如向后台提交数据,写法: this.$store.dispatch('action方法名',值)
commit:同步操作,写法:this.$store.commit('mutations方法名',值)
区别:
1.Action提交的是mutation,而不是直接变更状态,可以包含任意的异步操作。
2.dispatch推送一个action。
1.dispatch 异步操作 this.store.dispatch('action的方法',arg),调用actions里的方法。
2.commit同步操作this.store.commit('mutations的方法', arg),调用mutations里的方法。
使用方法步骤:
在上面代码中,在mutations中使用箭头函数更改state中的token数据。然后在actions中Login函数中通过commit('SET_TOKEN', tokenSuccess )来进行调用此函数并传参,才能在store存储成功。在需要的组件中使用this.$store.dispatch('actions方法')来调取store里的对应方法,从而更新。
作者:inyourface
链接:https://www.jianshu.com/p/92cacdb75b69