import Vue from 'vue'
import Vuex from 'vuex'
import axaios from 'axios'
import createPersistedState from "vuex-persistedstate" //将数据持久化, 此方法就是将store中的数据存到stroge中,以此来持久化
Vue.use(Vuex)
const store = new Vuex.Store({
state: {
info:{},
},
getters:{
getInfo:state => state.info
}
mutations:{
setInfo(state,info){
state.info = info
}
},
},
action:{
getInfoFun(context,info){
const info = axaios.get('/a/b')
context.commit('setInfo', info)
return info
}
},
plugins: [createPersistedState()] //这个方法是执行持久化。
})
==================组件中引用=================
this.$store.dispatch('getInfoFun') //引用
this.$store.getters.getInfo()
==================组件中引用=================
==================main.js定义=================
import router from './router'
import store from './store';
Vue.use(store) //这可能是一种方法
new Vue({
el: ‘#app‘,
router, // 注册路由
store, // 注册store
components: {APP},
template: <App/>
})
==================main.js定义=================