import Vuex from 'vuex' import api from '@/plugins/api.js' import { handleTree } from '@/plugins/tree.js' import share from '@/utils/Share' //Vuex.Store 构造器选项 const store = new Vuex.createStore({ state: { configList: {}, //配置列表 userInfo : {}, //用户信息 areaList : [],//地区列表信息 selectArea : { name : '全部' },//当前选择的地区 }, getters: { }, mutations: { // 初始化配置 initConfig(state){ api('getConfig', {}, res => { if(res.code == 200){ res.result.forEach(n => { state.configList[n.keyValue] = n.content }) } if(state.configList.open_address){ uni.setStorageSync('open_address', state.configList.open_address) } // console.log("initConfig===============", res); share() }) // let config = ['getPrivacyPolicy', 'getUserAgreement'] // config.forEach(k => { // api(k, res => { // if (res.code == 200) { // state.configList[k] = res.result // } // }) // }) }, getUserInfo(state){ api('getUserInfo', {}, res => { if(res.code == 200){ state.userInfo = res.result } }) }, // 退出登录 logout(state){ state.userInfo = {} state.role = false state.token = "" uni.removeStorageSync('token') }, // 查询地区 getArea(state, fn){ api('getCurrentArea', {}, res => { if(res.code == 200){ state.areaList = handleTree(res.result, 'id', 'pid') fn && fn(res.result) // state.selectArea = state.areaList[0].children[0].children[0] } }) }, setArea(state, selectArea){ state.selectArea = selectArea }, }, actions: {}, }) export default store