在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分布式调度视频教程    下载地址:百度网盘下载

posted @ 2018-11-02 22:19  yedda  阅读(976)  评论(0编辑  收藏  举报