import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
//数据,相当于data
state: {
},
getters: {
},
//里面定义方法,操作state方发
mutations: {
},
// Action和Mutation相似,Mutation 不能进行异步操作,若要进行异步操作,就得使用Action
actions: {
},
modules: {
},
})
vuex中一共有五个状态 State Getter Mutation Action Module
在vuex中state中定义数据,可以在任何组件中进行调用。提供唯一的公共数据源,相似于data
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
//数据,相当于data
state: {
userName:'zhangsan',
age:18,
},
})
方法一:
方法二:
方法三:从vuex中按需导入mapstate函数
mutations: { //mutations中定义方法,操作state。方法中将state 作为第一个参数,可以传其他参数
add(state,m) {
console.log(m)
state.count += 2
}
},
方法一:
方法二:
actions: { //进行异步操作
// Action和Mutation相似,Mutation 不能进行异步操作,若要进行异步操作,就得使用Action
addCountAction (context) {
context.commit('add')
}
}
方法一:
方法二: