Mr.Shi
2023-09-04 682182cf67a5aa9fed34335fea22d4673f30f10c
minipro_standard/store/index.js
@@ -1,6 +1,10 @@
import Vue from 'vue'
import Vuex from 'vuex'
import { pageCount, getTreeList } from '@/util/api/index.js'
import Vuex from 'vuex'
import {
   pageCount,
   getTreeList,
   getUserInfo
} from '@/util/api/index.js'
Vue.use(Vuex) // vue的插件机制
@@ -10,7 +14,7 @@
const token = uni.getStorageSync('token');
const userInfo = uni.getStorageSync('userInfo');
const Menu = uni.getStorageSync('MenuList');
const session = uni.getStorageSync('session');
const session = uni.getStorageSync('session');
// Vuex.Store 构造器选项
@@ -18,18 +22,18 @@
   // 为了不和页面或组件的data中的造成混淆,state中的变量前面建议加上$符号
   state: {
      // 用户信息
      userInfo: userInfo || null,
      userInfo: userInfo || null,
      token: token || null,
      menuButtonWidth: menuButtonWidth || '0',
      statusbarHeight: statusbarHeight || '0',
      navHeight: navHeight || '0',
      session: session ? session : '',
      // 菜单权限
      Menu: Menu ? Menu : [],
      // 待办数量
      upcomingNum: {
         d: 0,
         y: 0
      Menu: Menu ? JSON.parse(Menu) : [],
      // 待办数量
      upcomingNum: {
         d: 0,
         y: 0
      },
   },
   mutations: {
@@ -41,31 +45,42 @@
         uni.setStorageSync('statusbarHeight', val.statusbarHeight);
         uni.setStorageSync('menuButtonWidth', val.menuButtonWidth);
      },
      SETTOKEN(state, val) {
         state.token = val
         uni.setStorageSync('token', val);
      },
      SETUSERINFO(state, val) {
         state.userInfo = val
         uni.setStorageSync('userInfo', val);
      },
      SETNUM(state, val) {
         state.upcomingNum.d = val.d
         state.upcomingNum.y = val.y
      SETTOKEN(state, val) {
         state.token = val
         uni.setStorageSync('token', val);
      },
      SETMENU (state, data) {
      SETUSERINFO(state, val) {
         state.userInfo = val
         uni.setStorageSync('userInfo', val);
      },
      SETNUM(state, val) {
         state.upcomingNum.d = val.d
         state.upcomingNum.y = val.y
      },
      SETMENU(state, data) {
         state.Menu = data
         uni.setStorageSync('MenuList', JSON.stringify(data));
      },
      SETSESSION (state, data) {
      SETSESSION(state, data) {
         state.session = data;
         uni.setStorageSync('session', data);
      },
      clearCache(state) {
         state.userInfo = ''
         state.token = ''
         state.session = ''
         state.Menu = []
         state.upcomingNum.d = 0
         state.upcomingNum.y = 0
         uni.clearStorageSync()
      }
   },
   actions: {
      // 向后端获取菜单栏权限
      async getMenuList (content, type) {
         let res = await getTreeList({ type: type })
      async getMenuList(content, type) {
         let res = await getTreeList({
            type: type
         })
         if (res.code === 200) {
            content.commit('SETMENU', res.data)
         }
@@ -84,14 +99,25 @@
            height,
            menuButtonWidth
         })
      },
      async getUpcomingNum() {
         let res = await pageCount({})
         if (res.code === 200) {
            content.commit('SETNUM', { d: res.data.startNum, y: res.data.endNum })
         }
      }
      },
      async getUpcomingNum() {
         let res = await pageCount({})
         if (res.code === 200) {
            content.commit('SETNUM', {
               d: res.data.startNum,
               y: res.data.endNum
            })
         }
      },
      // 向后端获取个人信息
      async getUserInfos(content) {
         let res = await getUserInfo()
         if (res.code === 200) {
            content.commit('SETUSERINFO', res.data)
            return true;
         }
      }
   }
})
export default store
export default store