导航栏增加默认打开配置项

This commit is contained in:
hooray
2021-08-29 19:11:07 +08:00
parent f48462268d
commit 5a195d87e4
2 changed files with 15 additions and 1 deletions
+1 -1
View File
@@ -7,7 +7,7 @@
}"
/>
<!-- 侧边栏模式(无主导航) -->
<el-menu :unique-opened="$store.state.settings.sidebarUniqueOpened" :default-active="$route.meta.activeMenu || $route.path" :collapse="$store.state.settings.mode === 'pc' && $store.state.settings.sidebarCollapse" :collapse-transition="false" :class="{
<el-menu :unique-opened="$store.state.settings.sidebarUniqueOpened" :default-openeds="$store.state.menu.defaultOpenedPaths" :default-active="$route.meta.activeMenu || $route.path" :collapse="$store.state.settings.mode === 'pc' && $store.state.settings.sidebarCollapse" :collapse-transition="false" :class="{
'is-collapse-without-logo': $store.state.settings.menuMode !== 'single' && $store.state.settings.mode === 'pc' && $store.state.settings.sidebarCollapse
}"
>
+14
View File
@@ -1,3 +1,4 @@
import path from 'path-browserify'
import { deepClone } from '@/util'
import api from '@/api'
@@ -116,6 +117,7 @@ function flatAsyncRoutes(routes, breadcrumb, baseUrl = '') {
const state = () => ({
isGenerate: false,
routes: [],
defaultOpenedPaths: [],
headerActived: 0,
currentRemoveRoutes: []
})
@@ -167,6 +169,7 @@ const actions = {
}])
}
})
commit('setDefaultOpenedPaths', routes)
resolve(routes)
})
},
@@ -192,6 +195,7 @@ const actions = {
}])
}
})
commit('setDefaultOpenedPaths', routes)
resolve(routes)
})
})
@@ -210,6 +214,16 @@ const mutations = {
return item.children.length != 0
})
},
setDefaultOpenedPaths(state, routes) {
let defaultOpenedPaths = []
routes.map(item => {
item.meta.defaultOpened && defaultOpenedPaths.push(item.path)
item.children.map(child => {
child.meta.defaultOpened && defaultOpenedPaths.push(path.resolve(item.path, child.path))
})
})
state.defaultOpenedPaths = defaultOpenedPaths
},
// 根据路由判断属于哪个头部导航
setHeaderActived(state, path) {
state.routes.map((item, index) => {