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