在Vuex使用dispatch和commit来调用mutations的区别详解

main.js中

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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}
})

组件中:

?
1
2
3
4
5
6
7
8
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方法名',值)

尚学堂JAVA突击从零基础到就业4个月全程学习 百度云网盘(价值9800元)    下载地址:百度网盘下载
潭州学院-JavaVIP的Javascript的高级进阶-KeKe老师 (视频加笔记代码)    下载地址:百度网盘下载
扣丁学堂Java开发培训视频教程    下载地址:百度网盘下载
动力节点王勇JAVA+SSH+J2EE项目 电信流程管理引擎系统视频    下载地址:百度网盘下载
李兴华智囊团ssh开发案例    下载地址:百度网盘下载
传智播客第33期Java/Spring/Struts2/web/基础/就业班视频    下载地址:百度网盘下载
尚硅谷_宋红康,尚硅谷20天java核心技术教程    下载地址:百度网盘下载
极客学院java语言学习    下载地址:百度网盘下载
最新hibernate4课程视频教程    下载地址:百度网盘下载
Struts+Spring+Hibernate框架及应用开发/Java    下载地址:百度网盘下载
GOF设计模式    下载地址:百度网盘下载
BBS论坛项目    下载地址:百度网盘下载
JavaWEB基础视频教程    下载地址:百度网盘下载
Java WEB综合案例    下载地址:百度网盘下载
Java视频_javascript DOM编程视频教程    下载地址:百度网盘下载
Java视频_jQuery 视频教程    下载地址:百度网盘下载
Java视频_Ajax视频教程    下载地址:百度网盘下载
Java Hibernate5 140课最新视频教程 Java Hibernate5完全实战视频教程    下载地址:百度网盘下载
炼数成金 大型分布式系统案例实战 十四周大型分布式系统学习视频教程    下载地址:百度网盘下载
基于Spring+Quartz分布式调度视频教程    下载地址:百度网盘下载

猜你喜欢

转载自www.cnblogs.com/yedda/p/9898807.html