当前位置: 首页 > backend >正文

【Element Plus】Menu组件:url访问页面时高亮对应菜单栏

文章目录

    • 场景
    • 代码
    • 解决

场景

使用Element Plus的Menu 菜单 | Element Plus时,点击对应菜单会显示对应路由,此时会高亮选中菜单栏。但输入url访问对应路径,菜单栏不会默认高亮。

需求:url访问页面时高亮对应菜单栏。

代码

router:

import { createRouter, createWebHistory } from 'vue-router'export const routes = [{path: '',title: '功能Demo',// 父组件的component中要有<router-view></router-view>才会渲染子组件。实际上我们并不需要这个父组件children: [{path: '/shopping-link',name: 'shoppingLink',title: '复制链接弹出信息',component: () => import('@/views/shoppingLink.vue'),},],},
]const router = createRouter({history: createWebHistory(),routes: routes,
})export default router

Menu:

<template><div class="menu"><el-menuactive-text-color="#ffd04b"background-color="#545c64"class="el-menu-vertical-demo"text-color="#fff":router="true"><el-sub-menu v-for="item in routes" :index="item.path"><template #title>{{ item.title }}</template><el-menu-item v-for="i in item.children" :index="i.path" :route="i.path" :key="i.path">{{ i.title }}</el-menu-item></el-sub-menu></el-menu></div>
</template>
<script lang="ts" setup>
import { routes } from '@/router/index'</script><style lang="less" scoped>
.menu {width: 200px;height: 100%;background-color: #545c64;.el-menu {border: none;}
}
</style>

解决

Menu API:default-active
default-active可以设置默认高亮的菜单。当default-active的值匹配上el-menu-itemindex时,对应el-menu-item会高亮。

我们这里菜单el-menu-itemindex是路径,因此:进入页面时,获取路径,赋值给default-active即可。

    <el-menuactive-text-color="#ffd04b"background-color="#545c64"class="el-menu-vertical-demo"text-color="#fff":default-active="activePath" :router="true">
import { ref, onMounted } from 'vue'
const activePath = ref('')// 默认高亮
const getPath = () => {const path = location.pathnameactivePath.value = path
}onMounted(() => {getPath()
})
http://www.xdnf.cn/news/13284.html

相关文章:

  • 板凳-------Mysql cookbook学习 (十--4)
  • 小程序动画性能提升指南:CSS硬件加速与JavaScript动画框架对比
  • CentOS下的运维监控Grafana部署
  • 【HarmonyOS Next之旅】DevEco Studio使用指南(三十二) -> 构建系统生命周期
  • okhttp 实现长连接的完整方案
  • OpenLayers 获取地图状态
  • Docker 安装教程(CentOS 系统)纯新手可入门
  • wordpress后台更新后 前端没变化的解决方法
  • Java异步编程之消息队列疑难问题拆解
  • 2506C++,C++的时间库
  • 搭建本地瓦片地图服务器的完整指南
  • 脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
  • SCAU期末笔记 - 数据分析与数据挖掘题库解析
  • 使用 ML.NET Model Builder 训练机器学习模型进行预测性维护
  • 60天python训练计划----day50
  • 连锁超市冷库节能解决方案:如何实现超市降本增效
  • spring中的ImportSelector接口详解
  • 《高等数学》(同济大学·第7版)第四章第一节不定积分的概念与性质
  • 微软PowerBI考试 PL300-在 Power BI 中设计语义模型 【附练习数据】
  • C++11列表初始化:从入门到精通
  • Python学习(8) ----- Python的类与对象
  • 用 Rust 重写 Linux 内核模块实战:迈向安全内核的新篇章
  • LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
  • OpenGL-什么是软OpenGL/软渲染/软光栅?
  • 【求出100~500之间所有每位数的乘积大于每位数的和的数。】2022-4-16
  • c语言(持续更新)
  • 第三章支线四 ·事件风暴 · 时序与响应的协奏
  • LangGraph 深度解析:下一代AI应用编排引擎
  • 五大主流多智能体框架分析
  • DAY 26 函数专题1