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

《ElementPlus 与 ElementUI 差异集合》icon 图标使用(包含:el-button,el-input和el-dropdown 差异对比)

安装

注意 ElementPlusIcon 图标 要额外安装插件 @element-plus/icons-vue.

npm install @element-plus/icons-vue

注册

全局注册

定义一个文件 element-icon.js ,注意代码第 6 行。加上了前缀 ElIcon ,避免组件命名重复,且易于理解为 element-plusicon

import * as ElementPlusIconsVue from '@element-plus/icons-vue'export const registerElIcon = (app) => {// 全局注册图标 ElIconXxxxfor (let i in ElementPlusIconsVue) {let name = `ElIcon${i}`;app.component(name, ElementPlusIconsVue[i])}
}

main.js 中引入

import { registerElIcon } from './elements-icon.js'// 全局注册 el-icon
registerElIcon(app);

局部注册

在组件内局部注册,这里使用 <script setup>

<script setup>
import {Postcard as ElIconPostcard,Calendar as ElIconCalendar,
} from '@element-plus/icons-vue'
</script>

使用

全局或局部注册的使用方式是一样的。使用方式也有两种,且注意接下来的使用都是加了前缀 el-icon-xxxElIconXxxx

方式一:结合 el-icon 使用

使用 el-iconSVG 图标提供属性

<!-- 小驼峰方式 -->
<el-icon :size="size" :color="color"><el-icon-edit />
</el-icon><!-- 大驼峰方式 -->
<el-icon :size="size" :color="color"><ElIconEdit />
</el-icon>

方式二:直接使用 SVG 图标

<!-- 小驼峰方式 -->
<el-icon-edit /><!-- 大驼峰方式 -->
<ElIconEdit />

与 ElementUI 的区别

el-button

  • element-ui el-button 中的 icon 使用,属性 icon 是图标类名,类型是 string
  • element-plus el-button 中的 icon 使用,属性 icon 图标组件,类型是 string /Component

element-ui

方式 1:class=“el-icon-xxx” 类名

如图蓝色框是图标,文字标签 <span> 包裹图标标签 <i class="el-icon-xxx">

<el-button size="mini" type="text" ><i class="el-icon-folder-add"></i>新建1
</el-button>

在这里插入图片描述

方式 2:el-button icon 属性

如图蓝色框是图标,文字标签 <span> 与图标标签 <i class="el-icon-xxx">同级。

<el-button size="mini" type="text" icon="el-icon-folder-add">新建2
</el-button>

在这里插入图片描述

element-plus

以下 icon 组件都是加了前缀 ElIconXxxxel-icon-xxx

1. icon 组件方式

无论 icon 是全局或局部注册,在 el-button 中的使用方式都是一样的。

方式 1:直接使用 SVG 图标

如图蓝色框是图标,直接渲染 <svg> 标签。

<!-- 方式1:直接使用 SVG 图 -->
<el-button size="small" type="primary" link ><ElIconFolderAdd/>新建1
</el-button>

在这里插入图片描述

方式 2:结合 el-icon 使用

如图蓝色框是图标,且被标签 <i class="el-icon"> 包裹一层。

<!-- 方式2:结合 `el-icon` 使用 -->
<el-button size="small" type="primary" link ><el-icon><ElIconFolderAdd/></el-icon>新建2
</el-button>

在这里插入图片描述

2.el-button icon 属性方式

此处有坑!!! icon 的全局和局部组件注册,在 el-button 中使用 icon 属性有差异

方式 1:el-button 属性 icon 为 Component 类型

局部注册有效,全局注册无效!

  • 使用 el-button 属性 icon
  • 局部注册,在可以找到属性 icon 的组件对象;
  • 全局注册,无法找到icon 的组件对象,所以渲染失败
  • html 把文字标签 <span> 与标签 <i class="el-icon"> 渲染为同级;
<!-- 局部注册,注意 icon 前有 : -->
<el-button size="small" type="primary" link :icon="ElIconFolderAdd">新建3
</el-button>

在这里插入图片描述

方式 2:el-button 属性 icon 为 string 类型

全局注册有效,局部注册无效!

  • 使用 el-button 属性 icon,且没有 :
  • 全局注册,识别为全局注册的组件名称;
  • 局部注册,找不到组件名称,所以渲染失败
  • **小技巧:**代码第 6 行,也可写成小驼峰。这样就和 ElementUI 方式2 一致了 ;
  • html 把文字标签 <span> 与标签 <i class="el-icon"> 渲染为同级;

此方式无效。注意 icon 前没有 : ,传入是 string 类型,组件无法被识别。

<!-- 全局注册:注意 icon 前没有 : -->
<el-button size="small" type="primary" link icon="ElIconFolderAdd">新建4
</el-button>
<!-- 全局注册:注意 icon 前没有 : -->
<el-button size="small" type="primary" link icon="el-icon-folder-add">新建5
</el-button>

在这里插入图片描述

el-input

  • element-ui el-input 中的 icon 使用,属性前缀 prefix-icon 或后缀 suffix-icon 是图标类名,类型是 string

  • element-plus el-input 中的 icon 使用,属性前缀 prefix-icon 或后缀 suffix-icon 是图标类名,图标组件,类型是 string /Component

element-ui

有两种方式:

  1. 属性方式:使用前缀 prefix-icon 和后缀 suffix-icon
  2. slot 方式:使用前缀 prefix 和后缀 suffix
<!-- 属性方式 -->
<el-input placeholder="请输入内容" prefix-icon="el-icon-search" v-model="inputVal"></el-input>  <!-- slot 方式 -->
<el-input placeholder="请输入内容" v-model="inputVal"><i slot="prefix" class="el-input__icon el-icon-search"></i>
</el-input>

element-plus

这里不再赘述 icon 组件的全局注册和局部注册的差异。与 el-button 同理。

同样有两种方式。:

  1. 属性方式:使用前缀 prefix-icon 和后缀 suffix-icon
  2. slot 方式:使用前缀 #prefix 和后缀 #suffix
<!-- 属性方式,且局部注册,类型为 Component,有 :  -->
<el-input placeholder="请输入内容" :prefix-icon="ElIconSearch" v-model="inputVal" /><!-- 属性方式,全局部注册,类型为 string。没有 :  -->
<el-input placeholder="请输入内容" prefix-icon="ElIconSearch" v-model="inputVal" /><!-- 属性方式,全局部注册,类型为 string。没有 : 小驼峰  -->
<el-input placeholder="请输入内容" prefix-icon="el-icon-search" v-model="inputVal" /><!-- slot 方式 -->
<el-input placeholder="请输入内容" v-model="inputVal"><template #prefix><el-icon class="el-input__icon"><ElIconSearch/></el-icon></template>
</el-input>

el-dropdown

这里不再赘述 icon 组件的全局注册和局部注册的差异。与 el-button 同理。

  • element-ui el-dropdown 中的 icon 使用

  • element-plus el-dropdown 中的 icon 使用

element-ui

使用属性 icon 方式。

<el-dropdown-menu><el-dropdown-item command="about"  icon="el-icon-setting">关于</el-dropdown-item><el-dropdown-item command="theme"  icon="el-icon-data-analysis">主题</el-dropdown-item><el-dropdown-item command="logout" icon="el-icon-switch-button">注销</el-dropdown-item>
</el-dropdown-menu>

element-plus

使用属性 icon 方式。

<el-dropdown-menu><!-- 属性方式,且局部注册,类型为 Component,有 :  --><el-dropdown-item command="admin" :icon="ElIconSetting">后台管理</el-dropdown-item><!-- 属性方式,全局部注册,类型为 string。没有 :  --><el-dropdown-item command="theme" icon="ElIconDataAnalysis">切换主题</el-dropdown-item><!-- 属性方式,全局部注册,类型为 string。没有 : 小驼峰  --><el-dropdown-item command="logout" :con="el-icon-switch-button">注销</el-dropdown-item>
</el-dropdown-menu>

相关文章:

《ElementPlus 与 ElementUI 差异集合》icon 图标使用(包含:el-button,el-input和el-dropdown 差异对比)

安装 注意 ElementPlus 的 Icon 图标 要额外安装插件 element-plus/icons-vue. npm install element-plus/icons-vue注册 全局注册 定义一个文件 element-icon.js &#xff0c;注意代码第 6 行。加上了前缀 ElIcon &#xff0c;避免组件命名重复&#xff0c;且易于理解为 e…...

力扣题库第8题:去重后的最长子串

题目&#xff1a; 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长 子串的长度。 示例 1: 输入: s "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长度为 3。 示例 2: 输入: s "bbbbb" …...

CSS样式中长度单位含义解析:rpx、px、vw、vh、em、rem、pt

在 CSS 样式中&#xff0c;有几种常见的长度单位&#xff0c;包括 rpx 、 px 、 vw 和 vh 等&#xff0c;含义解析如下&#xff1a; 1 . rpx &#xff08;响应像素&#xff09;&#xff1a; 是微信小程序中的一种相对长度单位&#xff0c;可以根据屏幕宽度进行自适应缩放。 1rp…...

全国车辆识别代码信息API查询接口-VIN深度解析

我们先来介绍下什么是vin码&#xff0c;以及vin码的构成结构解析&#xff0c;汽车VIN码&#xff0c;也叫车辆识别号码&#xff0c;通俗可以理解为汽车的身份证号码。 VIN码一共分四大部分&#xff1a; 1~3位&#xff0c;是世界制造厂识别代号&#xff08;WMI&#xff09;&…...

python django 模型中字段设置blank, null属性值用法说明

问题1: ShareUser models.CharField(max_length128, blankTrue) blank设置True和false分别代表什么含义, 有什么区别?chatgpt回答的答案如下: 在 Django 模型字段中&#xff0c;blank 参数用于指定在创建对象时该字段是否可以为空值。它的含义如下&#xff1a; blankTrue:…...

暴雨信息:可持续转型更需要“以人为本”

数字化正在开启新的商业模式和价值流&#xff0c;为企业与组织带来巨大收益。其中&#xff0c;“人 (People)”这一因素至关重要。 提供更好的工作与生活体验&#xff0c;应对人口老龄化、劳动力短缺等挑战。对于企业而言&#xff0c;解决这些问题既是社会责任&#xff0c;也是…...

1.2_3 TCP/IP参考模型

文章目录 1.2_3 TCP/IP参考模型&#xff08;一&#xff09;OSI参考模型与TCP/IP参考模型&#xff08;二&#xff09;5层参考模型&#xff08;三&#xff09;5层参考模型的数据封装与解封装 1.2_3 TCP/IP参考模型 &#xff08;一&#xff09;OSI参考模型与TCP/IP参考模型 TCP/I…...

真空泵系统数据采集远程监控解决方案

行业背景 半导体制造业可以说是现代电子工业的核心产业&#xff0c;广泛应用于计算机、通信、汽车、医疗等领域。而在半导体生产加工过程中&#xff0c;如刻蚀、 镀膜、 扩散、沉积、退火等环节&#xff0c;真空泵都是必不可少的关键设备&#xff0c;它可以构建稳定受控的真空…...

Python语言在编程业界的地位——《跟老吕学Python编程》附录资料

Python语言在编程业界的地位——《跟老吕学Python编程》附录资料 ⭐️Python语言在编程业界的地位2024年3月编程语言排行榜&#xff08;TIOBE前十&#xff09; ⭐️Python开发语言开发环境介绍1.**IDLE**2.⭐️PyCharm3.**Anaconda**4.**Jupyter Notebook**5.**Sublime Text** …...

基于Redis自增实现全局ID生成器(详解)

本博客为个人学习笔记&#xff0c;学习网站与详细见&#xff1a;黑马程序员Redis入门到实战 P48 - P49 目录 全局ID生成器介绍 基于Redis自增实现全局ID 实现代码 全局ID生成器介绍 背景介绍 当用户在抢购商品时&#xff0c;就会生成订单并保存到数据库的某一张表中&#…...

hadoop 总结

1.hadoop 配置文件 core-site hdfs-site yarn-site.xml worker hdfs-site.xml <?xml version"1.0" encoding"UTF-8"?> <?xml-stylesheet type"text/xsl" href"configuration.xsl"?> <configuration><pr…...

luatos框架中LVGL如何使用中文字体〈二〉编写脚本设置中文字体

本节内容&#xff0c;将和大家一同学习&#xff0c;在luatos环境中&#xff0c;使用lvgl库&#xff0c;一步步的编译固件、编写脚本&#xff0c;最终实现中文字体的显示。 芯片&#xff1a;AIR101 LCD屏&#xff1a;ST7789 上一节&#xff0c;我们一同学习了&#xff0c;硬件引…...

c++单例模式和call_once函数

单例模式是一种常见的设计模式&#xff0c;用于确保某个类只能创建一个实例。由于单例模式是全局唯一的&#xff0c;因此在多线程中使用单例模式时需要考虑线程安全问题。 1.GetInstance()实例化一个对象 懒汉式&#xff1a;第一次用到类的时候才会去实例化。 懒汉式创建对象…...

AutoMQ 携手阿里云共同发布新一代云原生 Kafka,帮助得物有效压缩 85% Kafka 云支出!

3 月 9 日&#xff0c;“AutoMQ x 阿里云云原生创新论坛”在阿里巴巴西溪园区圆满落幕。本次论坛现场不仅重磅发布了新一代云原生 Kafka 产品&#xff08;AutoMQ On-Prem 版&#xff09;&#xff0c;还邀请了来自得物的稳定生产负责人分享 AutoMQ 在生产场景中的应用实践&…...

力扣977. 有序数组的平方

思路&#xff1a;暴力法&#xff1a;全部平方&#xff0c;然后调用排序API&#xff0c;排序算法最快是N*log(N)时间复制度。 双指针法&#xff1a;要利用好原本的数组本就是有序的数组这个条件&#xff0c; 只是有负数 导致平方后变大了&#xff0c;那么平方后的最大值就是在两…...

VSCode设置

VSCode设置 VSCode设置1.双击和点击显示设置2.快捷键设置 VSCode设置 1.双击和点击显示设置 VSCode设置双击才能打开文件、文件夹 打开文件夹&#xff1a;在设置页中搜索 expandMode,将 singleClick 改为 doubleClick 即可。 双击打开文件&#xff1a;在设置页中搜索workben…...

2.2 评估方法 机器学习

我们若有一个包含m个样例的数据集&#xff0c;若我们既需要训练&#xff0c;也需要测试&#xff0c;我们该如何处理呢&#xff1f;下面是几种方法&#xff1a; 2.2.1 留出法 “留出法”直接将数据集D划分为两个互斥的集合&#xff0c;其中一个作为训练集S&#xff0c;另一个作…...

第一类换元法(凑微分,凑狗)【高数笔记】

1.第一类换元法&#xff0c;解决的是什么类型的问题 2.不同的问题&#xff0c;应该有什么解法 3.13个基本积分公式&#xff0c;应该注意什么...

PostgreSQL数据库优化指南

默认安装下的 PostgreSQL 配置无法完全利用现有硬件&#xff0c;影响Netbox的性能。 本文章讲解了如何简单去优化。 优化 项目地址&#xff1a;https://github.com/le0pard/pgtune 首先打开&#xff1a;https://pgtune.leopard.in.ua/ (此网站会根据你的选择自动生成优化配置…...

VScode Error Lens插件

安装完成之后&#xff0c;当我们输入一些错误的语法格式的时候&#xff0c;它都会有一些提示&#xff01; 一开始是英文提示 修改为中文提示 设置搜索 typescript.local...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发&#xff0c;后来由Pivotal Software Inc.&#xff08;现为VMware子公司&#xff09;接管。RabbitMQ 是一个开源的消息代理和队列服务器&#xff0c;用 Erlang 语言编写。广泛应用于各种分布…...

0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化

是不是受够了安装了oracle database之后sqlplus的简陋&#xff0c;无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话&#xff0c;配置.bahs_profile后也能解决上下翻页这些&#xff0c;但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可&#xff0c…...

数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)

目录 &#x1f50d; 若用递归计算每一项&#xff0c;会发生什么&#xff1f; Horners Rule&#xff08;霍纳法则&#xff09; 第一步&#xff1a;我们从最原始的泰勒公式出发 第二步&#xff1a;从形式上重新观察展开式 &#x1f31f; 第三步&#xff1a;引出霍纳法则&…...

GraphRAG优化新思路-开源的ROGRAG框架

目前的如微软开源的GraphRAG的工作流程都较为复杂&#xff0c;难以孤立地评估各个组件的贡献&#xff0c;传统的检索方法在处理复杂推理任务时可能不够有效&#xff0c;特别是在需要理解实体间关系或多跳知识的情况下。先说结论&#xff0c;看完后感觉这个框架性能上不会比Grap…...

宠物车载安全座椅市场报告:解读行业趋势与投资前景

一、什么是宠物车载安全座椅&#xff1f; 宠物车载安全座椅是一种专为宠物设计的车内固定装置&#xff0c;旨在保障宠物在乘车过程中的安全性与舒适性。它通常由高强度材料制成&#xff0c;具备良好的缓冲性能&#xff0c;并可通过安全带或ISOFIX接口固定于车内。 近年来&…...