|
|
- 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
|