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

elementplus菜单组件的那些事

在使用 elementplus 的菜单组件时,我发现有很多东西是官方没有提到但是需要注意的点

1. 菜单组件右侧会有一个边框

设置css

.el-menu {border: 0 !important;
}

2. 使用其他的 icon

文字内容一定要写在 这个 名字为 title 的插槽中

<el-menu-itemv-for="item in navList":key="item":index="item.path"><spanstyle="margin-right: 20px; font-weight: bold":class="item.icon"></span>//这个地方我使用的是 阿里巴巴图标库里面的图表<template #title>{{ item.text }}//文字要在这里面</template></el-menu-item>

3. 刷新不能回到对应的 活动样式失效

我这边使用的是 :class 加 设置 :default-active 

先是在 el-menu-item 中指定了 选中时的样式

<el-menu-item:class="{subActive:getCurrentPath()==item.path}"//这行代码待会会解释v-for="item in navList":key="item":index="item.path"><spanstyle="margin-right: 20px; font-weight: bold":class="item.icon"></span><template #title>{{ item.text }}</template></el-menu-item>

  通过 getCurrentPath 这个函数获取到 当前的路径 ,并且 判断是否和当前的路径符合,来控制样式是否显示

我这边的 getCurrentPath 这个函数里面 是因为 前面前缀是一样的,我只需要判断后面是否相等就行,之所以会这样写 是因为很多时候 我们左侧的路由 因为右边的内容页,再细分,但是呢,它是同属于一个大的路由的,它们会有一个公共的前缀部分,只需要保证公共前缀部分相等就行

const getCurrentPath = () => {let currentPath = route.path.split("/");// console.log(currentPath);for (let i = 0; i < navList.length; i++) {let path = navList[i].path.split("/");if (flag === 0) {if (path[2] == currentPath[2]) {return navList[i].path;}}else{if (path[1] === currentPath[3]) {return navList[i].path;}}}
};

一般情况应该是这样,插一嘴,route 指的是 这个

import { useRoute } from "vue-router";const route = useRoute();
const getCurrentPath = () => {for (let i = 0; i < navList.length; i++) {if(navList[i].path===route.path) return navlist[i].path//其实就是判断 菜单的路由是否对的上当前路径}
};

然后 在 el-menu 中 需要设置 router 模式,也就是需要加上这个,设置默认路由 是 getCurrentPath() 就好(一定需要匹配的上 :index 里面的内容)

<el-menuclass="el-menu-vertical-demo":collapse="isCollapse"router:default-active="getCurrentPath()"></el-menu>

4. 修改高度等

element-plus 中很多样式都是设置了一个固定的值来设定css的一些参数,当我们需要修改这些的时候,我们发现使用 css 覆盖的效果微乎其微,其实我们可以自己修改这些值

很多都可以去检查里面找到,然后进行修改

:root {--el-menu-item-height: 80px;//这个是每个子菜单高度--el-menu-base-level-padding: 40px;//padding值--el-text-color-primary: #8a8989;//文字颜色
}

相关文章:

elementplus菜单组件的那些事

在使用 elementplus 的菜单组件时&#xff0c;我发现有很多东西是官方没有提到但是需要注意的点 1. 菜单组件右侧会有一个边框 设置css .el-menu {border: 0 !important; } 2. 使用其他的 icon 文字内容一定要写在 这个 名字为 title 的插槽中 <el-menu-itemv-for"it…...

【VSCode实战】Golang无法跳转问题竟是如此简单

上一讲【VSCode实战】Go插件依赖无法安装 – 经云的清净小站 (skycreator.top)&#xff0c;开头说到了在VSCode中Golang无法跳转的问题&#xff0c;但文章的最后也没给出解决方案&#xff0c;只解决了安装Go插件的依赖问题。 解决了插件依赖问题&#xff0c;无法跳转的问题也离…...

three.js中加载ply格式的文件,并使用tween.js插件按照json姿态文件运动

先贴一下文件地址&#xff1a; aa.ply 文件&#xff1a; https://download.csdn.net/download/yinge0508/89595650?spm1001.2014.3001.5501 new.json https://download.csdn.net/download/yinge0508/89595641?spm1001.2014.3001.5501 代码: <template><div>&…...

性能对比:Memcached 与 Redis 的关键差异

性能对比&#xff1a;Memcached 与 Redis 的关键差异 在选择合适的缓存系统时&#xff0c;Memcached 和 Redis 是最常被提及的两种技术。它们都是内存存储系统&#xff0c;用于提高数据访问速度和应用性能。尽管它们在功能上有很多相似之处&#xff0c;但在性能、特性和应用场…...

app-routing.module.ts 简单介绍

Angular的路由是一种功能&#xff0c;它允许应用程序响应不同的URL路径或参数并根据这些路径加载不同的组件。app-routing.module.ts是Angular项目中负责设置应用程序路由的文件。 以下是一个简单的app-routing.module.ts文件示例&#xff0c;它配置了三个路由&#xff1a; i…...

基于JSP的水果销售管理网站

你好&#xff0c;我是计算机学姐码农小野&#xff01;如果有相关需求&#xff0c;可以私信联系我。 开发语言&#xff1a; Java 数据库&#xff1a; MySQL 技术&#xff1a; JSP技术 工具&#xff1a; 未在文档中明确指出&#xff0c;可能包括但不限于IDEs&#xff08;如Ec…...

web3d值得学习并长期发展,性价比高吗?

在数字化浪潮日益汹涌的今天&#xff0c;Web3D技术以其独特的魅力和广泛的应用前景&#xff0c;逐渐成为技术领域的焦点。对于许多热衷于技术探索和创新的人来说&#xff0c;学习并长期发展Web3D技术无疑是一个值得考虑的选择。那么&#xff0c;Web3D技术的学习和发展究竟是否性…...

【大数据面试题】38 说说 Hive 怎么行转列

一步一个脚印&#xff0c;一天一道大数据面试题 博主希望能够得到大家的点赞收藏支持&#xff01;非常感谢 点赞&#xff0c;收藏是情分&#xff0c;不点是本分。祝你身体健康&#xff0c;事事顺心&#xff01; 行转列 假设我们有一张名为 sales_data 的表&#xff0c;其中包含…...

C语言中的二维数组

文章目录 &#x1f34a;自我介绍&#x1f34a;二维数组&#x1f34a;代码实战 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以&#xff1a;点赞关注评论收藏&#xff08;一键四连&#xff09;哦~ &#x1f34a;自我介绍 Hello,大家好&#xff0c;我是小珑也要变强&…...

Android12 添加屏幕方向旋转方案

添加屏幕方向属性值 device/qcom/qssi/system.prop persist.panel.orientation0修改开机动画方向 frameworks/base/cmds/bootanimation/BootAnimation.cpp status_t BootAnimation::readyToRun() {mAssets.addDefaultAssets();mDisplayToken SurfaceComposerClient::getIn…...

Harmony-(1)-TypeScript-ArkTs

1.TypeScript 1.1变量 布尔值let isDone: boolean false;数字let decLiteral: number 2023; let binaryLiteral: number 0b11111100111; let octalLiteral: number 0o3747; let hexLiteral: number 0x7e7; console.log(decLiteral is decLiteral)字符串let name: string…...

TC8:SOMEIP_ETS_007-008

SOMEIP_ETS_007: echoBitfields 目的 检查位字段是否能够被顺利地发送和接收。 测试步骤 Tester:创建SOME/IP消息Tester:使用method echoBitfields发送SOME/IP消息DUT:返回method响应消息,其中位字段的顺序与请求相比是反向的期望结果 3、DUT:返回method响应消息,其中位…...

[网络编程】网络编程的基础使用

系列文章目录 1、 初识网络 网络编程套接字 系列文章目录前言一、TCP和UDP协议的引入二、UDP网络编程1.Java中的UDP2.UDP回显代码案例3.UDP网络编程的注意事项 三、TCP网络编程1.TCP回显代码案例2.TCP多线程使用 总结 前言 在学习完基础的网络知识后&#xff0c;完成跨主机通…...

Postman中的Cookie和会话管理:掌握API测试的关键环节

Postman中的Cookie和会话管理&#xff1a;掌握API测试的关键环节 在API测试过程中&#xff0c;正确处理Cookie和会话管理对于模拟用户登录、维持会话状态以及测试需要用户认证的API至关重要。Postman提供了多种功能来帮助测试人员管理Cookie和会话&#xff0c;确保测试的准确性…...

python脚本,识别pdf数据,转换成表格形式

可以使用Python库来识别PDF文件并将其转换为表格形式。下面是一个示例脚本&#xff0c;使用了tabula-py库来进行PDF数据提取和转换操作。 首先&#xff0c;安装tabula-py库。可以使用以下命令来安装&#xff1a; pip install tabula-py然后&#xff0c;使用以下代码来实现PDF…...

Linux环境安装KubeSphere容器云平台并实现远程访问Web UI 界面

文章目录 前言1. 部署KubeSphere2. 本地测试访问3. Linux 安装Cpolar4. 配置KubeSphere公网访问地址5. 公网远程访问KubeSphere6. 固定KubeSphere公网地址 前言 本文主要介绍如何在Linux CentOS搭建KubeSphere并结合Cpolar内网穿透工具&#xff0c;实现远程访问&#xff0c;根…...

jumpserver web资源--远程应用发布机

1、环境 jumpserver:3.10.10 远程发布机&#xff1a;windows 2019 2、windows 2019准备 保证windows 正常登录&#xff0c;并且可以访问jumpserver 3、添加远程发布机 能正常连接就继续 可看到这里正常了 4、添加web资源 找到我们需要自动登录界面 获取相关元素选…...

Linux环境docker部署Firefox结合内网穿透远程使用浏览器测试

文章目录 前言1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox 前言 本次实践部署环境为本地Linux环境&#xff0c;使用Docker部署Firefox浏览器后&#xff0c;并结合cpolar内网穿…...

人工智能与机器学习原理精解【8】

文章目录 马尔科夫过程论基础理论函数系的定义、例子和分类一、函数系的定义二、函数系的例子三、函数系的分类 什么是测度定义性质种类应用总结 计算测度的公式1. 长度&#xff08;一维测度&#xff09;2. 面积&#xff08;二维测度&#xff09;3. 体积&#xff08;三维测度&a…...

关于Protobuf 输入输出中文到文件中的一系列问题

一、不含中文的常规处理 //定义 message Value {repeated uint32 uiMain 1; repeated uint32 uiSub 2; }message Simulate {repeated Value data 1; }//文件 data {uiMainAds : 36598uiMainAds : 35675uiMainAds : 36756 uiSubAds : 16924uiSubAds : 16488uiSu…...

后端笔记(1)--javaweb简介

1.JavaWeb简介 ​ *用Java技术来解决相关web互联网领域的技术栈 1.网页&#xff1a;展现数据 2.数据库&#xff1a;存储和管理数据 3.JavaWeb程序&#xff1a;逻辑处理 2.mysql 1.初始化Mysql mysqld --initialized-insecure2.注册Mysql服务 mysqld -install3.启动Mysql…...

便携式气象监测系统的优势:精准高效,随行监测

在快速变化的自然环境中&#xff0c;气象信息的准确获取与及时分析对于农业生产、环境保护、科学研究乃至日常生活都至关重要。随着科技的飞速发展&#xff0c;便携式气象监测系统以其独特的优势&#xff0c;正逐步成为气象监测领域的新宠&#xff0c;引领着气象监测技术的革新…...

uniapp App判断是否安装某个app

参考文档&#xff1a;HTML5 API Reference 项目中需要判断是否安装了uber&#xff0c;这里拿uber举例 &#xff0c;判断是否安装uber if (plus.runtime.isApplicationExist({pname: com.ubercab.eats, //Android平台通过pname属性&#xff08;包名&#xff09;查询action: ub…...

C/C++大雪纷飞代码

目录 写在前面 C语言简介 EasyX简介 大雪纷飞 运行结果 写在后面 写在前面 本期博主给大家带来了C/C实现的大雪纷飞代码&#xff0c;一起来看看吧&#xff01; 系列推荐 序号目录直达链接1爱心代码https://want595.blog.csdn.net/article/details/1363606842李峋同款跳…...

【linux】【设备树】具有 GPIO 控制器和连接器的硬件配置的备树(Device Tree)代码讲解

具有 GPIO 控制器和连接器的硬件配置的备树(Device Tree)代码讲解 背景 -学习Linux设备树 代码 soc {soc_gpio1: gpio-controller1 {#gpio-cells = <2>;};soc_gpio2: gpio-controller2 {#gpio-cells = <2>;}; };connector: connector {#gpio-cells = <2>…...

【2025留学】德国留学真的很难毕业吗?为什么大家不来德国留学?

大家好&#xff01;我是德国Viviane&#xff0c;一句话讲自己的背景&#xff1a;本科211&#xff0c;硕士在德国读的电子信息工程。 之前网上一句热梗&#xff1a;“德国留学三年将是你人生五年中最难忘的七年。”确实&#xff0c;德国大学的宽进严出机制&#xff0c;延毕、休…...

Apache Solr 最常用的命令

目录 一、Solr 安装与配置 1.1 下载与安装 1.2 启动与停止 二、Core 和 Collection 管理 2.1 创建与删除 2.2 核心操作 三、索引管理 3.1 添加与删除文档 3.2 批量操作 3.3 提交与优化 四、查询与检索 4.1 基本查询 4.2 高级查询 五、Schema 管理 5.1 字段管理 …...

经济下行,企业还在“裁员至上”?

最近小红书、B站崩溃&#xff0c;又延伸到某云服务厂商问题频发&#xff0c;让人忍不住戏谑&#xff1a;“这算不算裁员裁到大动脉&#xff1f;” 在阿道看来&#xff0c;各大企业的裁员动作&#xff0c;绕不开的依旧是“人月神话”&#xff1a;盲目加人带来的是成本的倍增和效…...

学习笔记之Java篇(0729)

p 数组 大纲知识点数组的概念数组的定义、四个特点数组的常见操作普通遍历、for-each遍历、java.util.Array类用法多维数组多维数组的内存结构、存储表格、Javabean和数组存储表格常见算法冒泡排序基础算法、冒泡排序优化算法、二分法查找&#xff08;折半查找&#xff09; 1、…...

吃肉的刷题记录4-基础知识-字符串

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 leetcode.186.反转字符串中的单词 leetcode.186.反转字符串中的单词 https://leetcode.cn/problems/reverse-words-in-a-string-ii/ 给你一个字符数组 s &#xf…...