index.js文件中须要引入vue 和 vuex,这个文件是主要的vue文件配置vue
import Vue from 'vue'; import Vuex from 'vuex'; import state from './state.js'; import getters from './getters.js'; import mutations from './mutations.js'; import actions from './acions.js'; Vue.use(Vuex); const store = new Vuex.Store({ state, getters, actions, mutations }) export default store;
4 在src文件夹下的入口js文件main.js中引入输出的storevuex
import store from './store/index.js'
并在Vue对象中加入store的配置npm
new Vue({ el: '#app', router, store,//加入sotre的配置 render: h => h(App) })
5 解释:
在state.js中设置状态值tagMessage;
在constants.js中设置状态值的常量;
在mutations.js中设置函数来为状态值的常量赋值,从而改变状态值,可是此时state的状态值尚未改变;
acions设置函数,使用commit来提交mutations中状态值的改变,可是此时state的状态值仍是没有改变,须要经过$dispatch来分配actions;
getters.js中返回了状态值,在vue文件中经过引入mapGetters使用this来调用此state的状态值;
能够在vue文件中经过this.$store.dispatch来分配actions,从而完成state的commit提交,进一步进行状态值state的改变。app