From 0d86c19b122011dc528c624597b0952660d69aba Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期日, 26 六月 2022 09:32:53 +0800
Subject: [PATCH] 1.优化动态路由
---
src/layout/components/Sidebar/index.vue | 70 ++++------------------------------
1 files changed, 9 insertions(+), 61 deletions(-)
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
index 33acb9b..5e5fc95 100644
--- a/src/layout/components/Sidebar/index.vue
+++ b/src/layout/components/Sidebar/index.vue
@@ -13,14 +13,14 @@
:collapse-transition="false"
mode="vertical"
>
- <sidebar-item
- v-for="route in routes"
- :key="route.path"
- class="el-scrollbar-menu"
- :item="route"
- :base-path="route.path"
- />
- <!-- <sidebar-item v-for="route in permission_routes" :key="route.path" :item="route" :base-path="route.path" />-->
+ <!-- <sidebar-item-->
+ <!-- v-for="route in routes"-->
+ <!-- :key="route.path"-->
+ <!-- class="el-scrollbar-menu"-->
+ <!-- :item="route"-->
+ <!-- :base-path="route.path"-->
+ <!-- />-->
+ <sidebar-item v-for="route in permission_routes" :key="route.path" :item="route" :base-path="route.path" />
</el-menu>
</el-scrollbar>
@@ -47,65 +47,13 @@
routers: []
}
},
- async created() {
- const { data: res } = await LoginMenu()
- this.routers = res
- this.routers.unshift({ code: '1000', name: '绯荤粺璁剧疆' })
- },
computed: {
...mapGetters([
'permission_routes',
'sidebar'
]),
routes() {
- // 鎺ュ彛涓殑杩斿洖鍊� 杩涜鏍煎紡鍖�
- const newCodeArr = []
- const newCodeNameArr = []
- this.routers.forEach(item => {
- if (item.code) {
- newCodeArr.push(item.code)
- newCodeNameArr.push({ code: item.code, title: item.name })
- if (item.children) {
- item.children.forEach(it => {
- if (it.code) {
- newCodeArr.push(it.code)
- newCodeNameArr.push({ code: it.code, title: it.name })
- }
- })
- }
- }
- })
-
- // 鏈湴璺敱涓� 鎺ュ彛涓殑杩斿洖鍊艰繘琛屽尮閰嶏紝鏈夌浉鍚宑ode鐨勫�艰繘琛宲ush
- const arr = this.$router.options.routes
- const arr2 = []
- arr.forEach((item, index) => {
- if (newCodeArr.includes(item.code) && item.children.length === 1) {
- arr2.push(item)
- } else if (newCodeArr.includes(item.code) && item.children.length > 1) {
- newCodeNameArr.forEach(it1 => { // 鏇挎崲鎺ュ彛涓殑name涓鸿彍鍗曞悕绉�
- if (it1.code === item.code) {
- item.meta.title = it1.title
- }
- })
- const a = []
- item.children.forEach((it2, ind) => { // 閬嶅巻
- if (newCodeArr.includes(it2.code)) {
- newCodeNameArr.forEach(it1 => { // 鏇挎崲鎺ュ彛涓殑name涓鸿彍鍗曞悕绉�
- if (it2.code === it1.code) {
- it2.meta.title = it1.title
- }
- })
- a.push(it2)
- }
- })
- item.children = a
- arr2.push(item)
- }
- })
-
- return arr2
- // return arr
+ return this.$router.options.routes
},
activeMenu() {
const route = this.$route
--
Gitblit v1.9.3