vuex 中dispatch 和 commit 的用法和区别


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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM