Mr.Zhang
2023-09-01 a52f13d719ee9cd53f129f4c59dcad783977fce9
minipro_standard/store/index.js
@@ -1,5 +1,6 @@
import Vue from 'vue'
import Vuex from 'vuex'
import Vuex from 'vuex'
import { pageCount, getTreeList } from '@/util/api/index.js'
Vue.use(Vuex) // vue的插件机制
@@ -7,7 +8,8 @@
const statusbarHeight = uni.getStorageSync('statusbarHeight');
const menuButtonWidth = uni.getStorageSync('menuButtonWidth');
const token = uni.getStorageSync('token');
const userInfo = uni.getStorageSync('userInfo');
const userInfo = uni.getStorageSync('userInfo');
const Menu = uni.getStorageSync('MenuList');
// Vuex.Store 构造器选项
@@ -20,6 +22,13 @@
      menuButtonWidth: menuButtonWidth || '0',
      statusbarHeight: statusbarHeight || '0',
      navHeight: navHeight || '0',
      // 菜单权限
      Menu: Menu ? Menu : [],
      // 待办数量
      upcomingNum: {
         d: 0,
         y: 0
      },
   },
   mutations: {
      setHeight(state, val) {
@@ -37,12 +46,26 @@
      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));
      }
   },
   actions: {
      // 向后端获取菜单栏权限
      async getMenuList (content, type) {
         let res = await getTreeList({ type: type })
         if (res.code === 200) {
            content.commit('SETMENU', res.data)
         }
      },
      // 获取状态高度
      getHeight(context) {
      getHeight(context) {
         let res = uni.getMenuButtonBoundingClientRect()
         let status = uni.getSystemInfoSync()
         let menuButtonWidth = res.width
@@ -56,6 +79,12 @@
            menuButtonWidth
         })
      },
      async getUpcomingNum() {
         let res = await pageCount({})
         if (res.code === 200) {
            content.commit('SETNUM', { d: res.data.startNum, y: res.data.endNum })
         }
      }
   }
})