时间:2021-05-25
main.js中
import Vuex from 'vuex'Vue.use(vuex);const store = new Vuex.store({ state: { nickName: "", cartCount: 0 }, mutations: { updateUserInfo(state,nickName) { state.nickName = nickName; }, updateCartCount(state,cartCount) { state.cartCount += cartCount; } }, actions: { updateUserInfo(context) { context.commit("updateUserInfo"); }, updateCartCount(context) { context.commit("updateCartCount"); } }})new Vue({ el: "#app", store, router, template: '<App/>', components: {App}})组件中:
methods: { increment(){ this.$store.dispatch("updateUserInfo", 'nick'); //this.$store.commit("increment", 'nick'); }, decrement() { this.$store.dispatch("updateCartCount", 1); // this.$store.commit("decrement", 1); } }区别:
dispatch:含有异步操作,例如向后台提交数据,写法: this.$store.dispatch('mutations方法名',值)
commit:同步操作,写法:this.$store.commit('mutations方法名',值)
以上这篇在Vuex使用dispatch和commit来调用mutations的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
问题:已知Vuex中通过actions提交mutations要通过context.commit(mutations,object)的方式来完成然而commit中
上篇是读取state,这篇是修改状态。即如何操作Mutations。一.$store.commit()Vuex提供了commit方法来修改状态1.store.j
微信公众号支付1.使用jssdk调用微信支付,具体查看开发文档;使用的vuex,在mutations中wechatPay(state,data){state.p
代码示例:this.$store.commit('loginStatus',1);this.$store.dispatch('isLogin',true);规范
Vuex(2.3.0+)可以用store.registerModule方法在进入路由时进行注册,离开路由时候销毁actions,mutations,getter