12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- import Vue from 'vue'
- import Vuex from 'vuex'
- import login from '@/apis/login'
- import common from '@/apis/common'
- Vue.use(Vuex);
- export default new Vuex.Store({
- //所有的数据都放在state中
- state: {
- token: '',
- user_account: '',
- userInfo: null,
- checkGoodsList: [],
- header: {
- serviceTel: {}
- },//页头配置
- footer: [],//页尾配置
- links: null,//友情链接
- },
- getters: {
- userInfo: state => state.userInfo,
- token: state => state.token,
- checkGoodsList: state => state.checkGoodsList,
- header: state => state.header,
- footer: state => state.footer,
- links: state => state.links,
- },
- //操作数据,唯一的通道是mutations
- mutations: {
- setUserInfo(state, data) {
- state.userInfo = data;
- },
- setCheckGoodsList(state, data) {
- state.checkGoodsList = data;
- },
- setHomeSetList(state, data) {
- data.forEach(item => {
- if (item.configKey === 'home.header') {
- state.header = JSON.parse(item.configValue)
- console.log(state.header)
- }
- if (item.configKey === 'home.footer') {
- state.footer = JSON.parse(item.configValue)
- console.log(state.footer)
- }
- if (item.configKey === 'home.links') {
- state.links = JSON.parse(item.configValue)
- console.log(state.links)
- }
- })
- }
- },
- //actions,可以来做异步操作,然后提交给mutations,而后再对state(数据)进行操作
- actions: {
- /**
- *
- * @param {*} context
- * @returns
- * 获取用户信息
- */
- getUserInfo(context) {
- return new Promise(resolve => {
- login.getInfo().then(res => {
- context.commit('setUserInfo', res.data)
- resolve()
- })
- })
- },
- /**
- *
- * @param {*} context
- * @returns
- * 获取首页配置
- */
- getCommonBaseHomeList(context) {
- return new Promise(resolve => {
- common.getCommonBaseHomeList().then(res => {
- context.commit('setHomeSetList', res.rows)
- resolve()
- })
- })
- }
- }
- })
|