|
|
@ -1,12 +1,16 @@
|
|
|
|
<template>
|
|
|
|
<template>
|
|
|
|
<el-scrollbar class="layout-menu" :class="{ collapse: collapseMenu }">
|
|
|
|
<div class="layout-menu" :class="{ collapse: collapseMenu }">
|
|
|
|
<el-menu unique-opened :default-active="activeMenu" @select="handleSelect">
|
|
|
|
<LayoutTitle />
|
|
|
|
<MenuItem v-for="(item, index) in menuList" :key="index" :menu-item="item" />
|
|
|
|
<el-scrollbar>
|
|
|
|
</el-menu>
|
|
|
|
<el-menu unique-opened :default-active="activeMenu" @select="handleSelect">
|
|
|
|
</el-scrollbar>
|
|
|
|
<MenuItem v-for="(item, index) in menuList" :key="index" :menu-item="item" />
|
|
|
|
|
|
|
|
</el-menu>
|
|
|
|
|
|
|
|
</el-scrollbar>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script setup>
|
|
|
|
<script setup>
|
|
|
|
|
|
|
|
import LayoutTitle from './title.vue';
|
|
|
|
import MenuItem from './menu-item.vue';
|
|
|
|
import MenuItem from './menu-item.vue';
|
|
|
|
const router = useRouter();
|
|
|
|
const router = useRouter();
|
|
|
|
const store = useStore();
|
|
|
|
const store = useStore();
|
|
|
@ -46,7 +50,6 @@
|
|
|
|
width: @layout-menu-width;
|
|
|
|
width: @layout-menu-width;
|
|
|
|
height: 100%;
|
|
|
|
height: 100%;
|
|
|
|
background-color: @layout-menu-bgc;
|
|
|
|
background-color: @layout-menu-bgc;
|
|
|
|
padding: @layout-space;
|
|
|
|
|
|
|
|
transition: width 0.3s;
|
|
|
|
transition: width 0.3s;
|
|
|
|
box-sizing: border-box;
|
|
|
|
box-sizing: border-box;
|
|
|
|
&.collapse {
|
|
|
|
&.collapse {
|
|
|
@ -61,10 +64,15 @@
|
|
|
|
:deep(*) {
|
|
|
|
:deep(*) {
|
|
|
|
white-space: nowrap;
|
|
|
|
white-space: nowrap;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
:deep(.el-scrollbar__view) {
|
|
|
|
:deep(.el-scrollbar) {
|
|
|
|
height: 100%;
|
|
|
|
height: calc(100% - @layout-header-height);
|
|
|
|
.el-menu {
|
|
|
|
padding: @layout-space;
|
|
|
|
border-right: none;
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
|
|
.el-scrollbar__view {
|
|
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
.el-menu {
|
|
|
|
|
|
|
|
border-right: none;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|