From 3ad7bf40b56d0bdfa2524ba15c63efa0b8d37b60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= <2178503051@qq.com> Date: Thu, 11 Jun 2026 11:28:42 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E4=BA=8C=E7=BA=A7?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E5=AD=90=E5=AF=BC=E8=88=AA=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=EF=BC=88SubNav=20+=20redirectMenu=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 SubNav 组件:Navbar 下方水平子导航条,展示当前二级菜单下的三级页面,支持滚动和下拉分组 - 新增 redirectMenu 页面:点击二级菜单时卡片式展示子页面列表 - SidebarItem 深度 >=1 时改为叶子节点渲染(小圆点标记),激活高亮回退到二级菜单 - Navbar 布局重构为 Flexbox,面包屑/SubNav 根据场景切换 - 新增 productionLine Vuex 模块,轧辊研磨页改为 store 方式读取产线数据 - Sidebar activeMenu 逻辑增强:自动定位当前页所属二级菜单 --- klp-ui/src/assets/styles/sidebar.scss | 13 + klp-ui/src/layout/components/Navbar.vue | 23 +- .../layout/components/Sidebar/SidebarItem.vue | 46 ++- .../src/layout/components/Sidebar/index.vue | 33 +- klp-ui/src/layout/components/SubNav.vue | 306 ++++++++++++++++++ klp-ui/src/router/index.js | 6 + klp-ui/src/store/getters.js | 1 + klp-ui/src/store/index.js | 4 +- klp-ui/src/store/modules/productionLine.js | 27 ++ klp-ui/src/views/mes/roll/grind/index.vue | 9 +- klp-ui/src/views/redirectMenu.vue | 252 +++++++++++++++ 11 files changed, 705 insertions(+), 15 deletions(-) create mode 100644 klp-ui/src/layout/components/SubNav.vue create mode 100644 klp-ui/src/store/modules/productionLine.js create mode 100644 klp-ui/src/views/redirectMenu.vue diff --git a/klp-ui/src/assets/styles/sidebar.scss b/klp-ui/src/assets/styles/sidebar.scss index 51e94e39..7572de21 100644 --- a/klp-ui/src/assets/styles/sidebar.scss +++ b/klp-ui/src/assets/styles/sidebar.scss @@ -303,4 +303,17 @@ #app .sidebar-container .nest-menu .el-submenu .el-submenu__title { margin: 0 4px; +} + +// 二级菜单叶子页面小圆点 +.el-menu-item.is-page-item::before { + content: ''; + display: inline-block; + width: 6px; + height: 6px; + border-radius: 50%; + background: var(--current-color, #409EFF); + margin-right: 8px; + flex-shrink: 0; + vertical-align: middle; } \ No newline at end of file diff --git a/klp-ui/src/layout/components/Navbar.vue b/klp-ui/src/layout/components/Navbar.vue index 4c6747cb..6865f279 100644 --- a/klp-ui/src/layout/components/Navbar.vue +++ b/klp-ui/src/layout/components/Navbar.vue @@ -2,7 +2,8 @@