|
@@ -1,31 +1,77 @@
|
|
|
<template>
|
|
|
<el-menu
|
|
|
- default-active="0"
|
|
|
+ :default-active="$store.state.system.activedTabValue"
|
|
|
background-color="#353743"
|
|
|
text-color="#fff"
|
|
|
active-text-color="#53a8ff"
|
|
|
router
|
|
|
+ @select="onMenuSelect"
|
|
|
>
|
|
|
- <el-menu-item index="0" route="/dashboard">
|
|
|
+ <el-menu-item index="01" route="/dashboard">
|
|
|
<i class="el-icon-monitor"></i>
|
|
|
<span>工作台</span>
|
|
|
</el-menu-item>
|
|
|
- <el-submenu index="1">
|
|
|
+ <el-submenu index="02">
|
|
|
<template #title>
|
|
|
<i class="el-icon-setting"></i>
|
|
|
<span>系统管理</span>
|
|
|
</template>
|
|
|
|
|
|
- <el-menu-item index="1-1" route="/user">
|
|
|
+ <el-menu-item index="0201" route="/user">
|
|
|
<i class="el-icon-user"></i>
|
|
|
<span>用户管理</span>
|
|
|
</el-menu-item>
|
|
|
- <el-menu-item index="1-2" route="/role">
|
|
|
- <i class="el-icon-coordinate"></i> <span>角色管理</span></el-menu-item
|
|
|
- >
|
|
|
- <el-menu-item index="1-3" route="/menu">
|
|
|
- <i class="el-icon-tickets"></i> <span>菜单管理</span></el-menu-item
|
|
|
- >
|
|
|
+ <el-menu-item index="0202" route="/role">
|
|
|
+ <i class="el-icon-coordinate"></i> <span>角色管理</span>
|
|
|
+ </el-menu-item>
|
|
|
+ <el-menu-item index="0203" route="/menu">
|
|
|
+ <i class="el-icon-tickets"></i> <span>菜单管理</span>
|
|
|
+ </el-menu-item>
|
|
|
</el-submenu>
|
|
|
+ <el-menu-item index="03" route="/profile">
|
|
|
+ <i class="el-icon-tickets"></i> <span>个人信息</span>
|
|
|
+ </el-menu-item>
|
|
|
+ <el-menu-item index="04" route="/profile-setting">
|
|
|
+ <i class="el-icon-tickets"></i> <span>个人设置</span>
|
|
|
+ </el-menu-item>
|
|
|
</el-menu>
|
|
|
</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+export default {
|
|
|
+ name: 'AppMenu',
|
|
|
+ methods: {
|
|
|
+ findMenuByID(id) {
|
|
|
+ const menus = this.$store.state.menus;
|
|
|
+ var m;
|
|
|
+ for (var i = 0, l = menus.length; i < l; i++) {
|
|
|
+ m = menus[i];
|
|
|
+ if (m.id === id) {
|
|
|
+ return m;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (m.children) {
|
|
|
+ for (var j = 0, len = m.children.length; j < len; j++) {
|
|
|
+ if (m.children[j].id === id) {
|
|
|
+ return m.children[j];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return null;
|
|
|
+ },
|
|
|
+ onMenuSelect(index) {
|
|
|
+ const selectedMenu = this.findMenuByID(index);
|
|
|
+
|
|
|
+ // console.log(`output->selectedMenu`, selectedMenu);
|
|
|
+ this.$store.commit('system/addTab', {
|
|
|
+ label: selectedMenu.name,
|
|
|
+ name: selectedMenu.id,
|
|
|
+ });
|
|
|
+
|
|
|
+ this.$store.commit('system/setActivedTab', selectedMenu.id);
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|