doum
2025-09-28 9ab109b9ee96e7ff2bf2b935a044aee5842a3ddc
admin/src/store/index.js
@@ -1,15 +1,25 @@
import Vue from 'vue'
import Vuex from 'vuex'
import router from '../router'
Vue.use(Vuex)
const state = {
  // 登录用户信息
  userInfo: null,
  tableHeightNew: 300,
  primaryColor: '#2080f7',
  // 首页
  homePage: null,
  // 菜单
  menuData: {
    // 菜单列表
    list: [],
    // 是否收起
    collapse: false
  },
  topMenuCurrent: {
  },
  topMenuList: {
    // 菜单列表
    list: [],
    // 是否收起
@@ -38,7 +48,9 @@
      ...data
    }
  },
  setTableHeightNew: (state, data) => {
    state.tableHeightNew = data
  },
  clearUserInfo: (state) => {
    state.userInfo = null
  },
@@ -47,19 +59,34 @@
  setHomePage (state, homePage) {
    state.homePage = homePage
  },
  // 设置首页路由信息
  setTopMenuCurrent (state, current) {
    console.log("setTopMenuCurrent",current)
    if(current.id !== state.topMenuCurrent.id){
      state.topMenuList.list.forEach(item => {
        console.log(item.id, item.id)
        if (current.id == item.id) {
          state.topMenuCurrent = current
          state.menuData.list = item.children
        }
      })
    }
  },
  // 重置菜单
  resetMenus: (state) => {
    state.topMenuId=null
    state.menuData.list = []
  },
  //  tags
  pushtags (state, val) {
    // 如果等于-1说明tabs不存在那么插入,否则什么都不做
    // findindex找角标,循环判断一下,如果等于那么就代表有相同的,就不必添加,如果找不到那就是-1.就添加
    // state.tags = [{ ...val, keepAlive: false }]
    const result = state.tags.findIndex(item => item.index === val.index)
    if (result === -1) {
      if (result === -1) {
      state.tags.push({ ...val, keepAlive: false })
    } else {
      state.tags[result] = { ...val, keepAlive: true }
      state.tags[result] = { ...val, keepAlive: false }
    }
    // result === -1 ? state.tags.push(val) : (state.tags[result]==val)
  },