| | |
| | | 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: [], |
| | | // 是否收起 |
| | |
| | | ...data |
| | | } |
| | | }, |
| | | |
| | | setTableHeightNew: (state, data) => { |
| | | state.tableHeightNew = data |
| | | }, |
| | | clearUserInfo: (state) => { |
| | | state.userInfo = null |
| | | }, |
| | |
| | | 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) |
| | | }, |