From 045da5de062c1b43f53bc7b6a4cf125fbd97a3e5 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 09 四月 2026 15:37:14 +0800
Subject: [PATCH] 1.产品维护产品大类新增时层级不做限制 2.角色管理数据权限范围枚举值修改
---
src/components/Breadcrumb/index.vue | 60 +++++++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 41 insertions(+), 19 deletions(-)
diff --git a/src/components/Breadcrumb/index.vue b/src/components/Breadcrumb/index.vue
index 1567961..0ff79ef 100644
--- a/src/components/Breadcrumb/index.vue
+++ b/src/components/Breadcrumb/index.vue
@@ -2,7 +2,8 @@
<el-breadcrumb class="app-breadcrumb" separator="/">
<transition-group name="breadcrumb">
<el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path">
- <span v-if="item.redirect === 'noRedirect' || index == levelList.length - 1" class="no-redirect">{{ item.meta.title }}</span>
+ <span v-if="item.redirect === 'noRedirect' || index == levelList.length - 1" class="no-redirect">{{
+ item.meta.title }}</span>
<a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a>
</el-breadcrumb-item>
</transition-group>
@@ -28,7 +29,7 @@
if (index !== 0) item = item.slice(1)
return item
})
- getMatched(pathList, permissionStore.sidebarRouters, matched)
+ getMatched(pathList, permissionStore.defaultRoutes, matched)
} else {
matched = route.matched.filter((item) => item.meta && item.meta.title)
}
@@ -48,11 +49,13 @@
return num
}
function getMatched(pathList, routeList, matched) {
- let data = routeList.find((item) => item.path == pathList[0])
- matched.push(data)
- if (data.children && pathList.length) {
- pathList.shift()
- getMatched(pathList, data.children, matched)
+ let data = routeList.find(item => item.path == pathList[0] || (item.name += '').toLowerCase() == pathList[0])
+ if (data) {
+ matched.push(data)
+ if (data.children && pathList.length) {
+ pathList.shift()
+ getMatched(pathList, data.children, matched)
+ }
}
}
function isDashboard(route) {
@@ -82,15 +85,34 @@
</script>
<style lang='scss' scoped>
-.app-breadcrumb.el-breadcrumb {
- display: inline-block;
- font-size: 14px;
- line-height: 50px;
- margin-left: 8px;
-
- .no-redirect {
- color: #97a8be;
- cursor: text;
- }
-}
-</style>
\ No newline at end of file
+.app-breadcrumb.el-breadcrumb {
+ display: inline-block;
+ font-size: 14px;
+ line-height: 56px;
+ margin-left: 8px;
+
+ :deep(.el-breadcrumb__inner) {
+ color: var(--text-secondary);
+ font-weight: 500;
+ transition: color 0.2s ease;
+ }
+
+ :deep(.el-breadcrumb__separator) {
+ color: var(--text-tertiary);
+ }
+
+ a {
+ color: var(--text-secondary);
+
+ &:hover {
+ color: var(--current-color);
+ }
+ }
+
+ .no-redirect {
+ color: var(--current-color);
+ font-weight: 600;
+ cursor: text;
+ }
+}
+</style>
--
Gitblit v1.9.3