猿问

VUE里面:[CHANGE_MSG](state, msg)这个是什么语法?

部分代码如下:


import Vue from 'vue'

import Vuex from 'vuex'

import { CHANGE_MSG, INCREMENT_COUNTER } from './mutation_types'


Vue.use(Vuex)


const state = {

  message: 'Hello Vue!',

  counter: 0

}


const mutations = {

  [CHANGE_MSG](state, msg) {

    state.message = msg

  },

  [INCREMENT_COUNTER](state) {

    state.counter ++;

  }

}


慕妹3242003
浏览 726回答 1
1回答

holdtom

每个mutation都有一个字符串的事件类型和一个回调函数,事件类型就是你的CHANG_MSG,后面的是回调函数,一般可以把事件类型作为常量存在mutation_types.js这个文件里面,方便统一管理,在你的store.js引入之后就可以CHANGE_MSG (state, msg) {    state.message = msg  }这样commit你的mutation在组件里使用的话首先import你的mutation_types.jsimport * as types from '../store/mutation_types'如果需要提交mutation,那么在方法里面this.$store.commit(types.CHANGE_MSG)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答