import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) const store = new Vuex.Store({ state: { //公共的变量,这里的变量不能随便修改,只能通过触发mutations的方法才能改变 tokenInfo: '', user: {}, appear: {}, power: [] }, mutations: { //相当于同步的操作 setTokenInfo(state, newSetToken) { state.tokenInfo = newSetToken // 修改state里的tokenInfo }, setUser(state, newSetUser) { state.user = newSetUser }, setAppear(state,newSetAppear){ state.appear = newSetAppear }, setPower(state,newsetPower){ state.power = newsetPower } }, actions: { //相当于异步的操作,不能直接改变state的值,只能通过触发mutations的方法才能改变 addTokenInfo(context, newSetToken) { context.commit('setTokenInfo', newSetToken) }, addUser(context, newUser) { context.commit('setUser', newUser) }, addAppear(context,newSetAppeaar){ context.commit('setAppear',newSetAppeaar) }, addPower(context,newSetPower){ context.commit('setPower',newSetPower) } } }) export default store