Vue3 Element Plus 动态图标

Element Plus 中的图标以组件的形式来使用,而在基于Vue 2.x的Element UI中图标是字符串的形式,这样就导致过去的一些使用习惯不得不在使用Vue3的过程中改变,但实际上,在基于Vue3的Element Plus中也可以以字符串的形式来使用,只是需要多做一些工作。

为什么基于字符串更适合大家的使用呢?因为图标的使用有时候是动态的,比如:菜单上的图标大部分的时候是通过后台配置的,按钮上面的图标可能会因为使用者的不同而显示不同的图标,所以我们更多地需要使用动态图标,那么,下面就来说一下在Element Plus中如何在图标组件的基础上进行动态图标的使用。

1.全局注册图标组件

import { createApp } from 'vue'
import App from './major.vue'
import * as ElIcons from '@element-plus/icons-vue'
​
const app = createApp(App)
​
for (const name in ElIcons) {app.component(name, ElIcons[name])
}
​
app.mount('#app')

在上面的代码中,使用 import * as ElIcons from '@element-plus/icons-vue' 将所有图标导入,然后执行:

for (const name in ElIcons) {app.component(name, ElIcons[name])
}

对所有图标组件进行注册,这样,在页面中使用图标组件的时候就可以直接使用了。

2.以组件形式使用图标

1.使用el-icon

<el-icon :size="20"><edit />
</el-icon>

2.使用图标组件

<edit style="width: 1em; height: 1em; margin-right: 8px" />
<share style="width: 1em; height: 1em; margin-right: 8px" />

3.按钮图标

<el-button icon="Search" circle></el-button>
<el-button type="primary" icon="Edit" circle></el-button>
<el-button type="success" icon="Check" circle></el-button>
<el-button type="info" icon="Message" circle></el-button>
<el-button type="warning" icon="Star" circle></el-button>
<el-button type="danger" icon="Delete" circle></el-button>

3.动态图标

动态图标需要使用 component 标签来实现,如:

<component :is="icon" style="width: 20px; height:20px;"/>
<component v-for="(icon, index) in icons" :key="index" :is="icon"style="width: 20px; height:20px;"/>

在js代码中:

  data () {return {icon: 'edit',icons: ['plus', 'delete', 'search', 'check', 'message']}},

效果如下:

Vue3 Element Plus 动态图标相关推荐

  1. vue3+ts+element-plus动态图标生成方式

    1.安装 $ yarn add @element-plus/icons # 或者 $ npm install @element-plus/icons 2.使用全局组件的方式引入 //main.ts i ...

  2. 在Vue3中使用Element Plus Icon图标的几种方式

    安装 Element Plus $ npm install @element-plus/icons 在main.js 引入 import * as ElIcon from '@element-plus ...

  3. 使用Vue3+Element Plus开发Chrome插件

    使用Vue3+Element Plus开发Chrome插件 引言 初始Vue项目的创建 Element-Plus组件的安装及导入 其他文件配置 .eslintrc.js文件 vue.config.js ...

  4. openlayers6【十六】vue overlay类实现gif动态图标效果详解

    文章目录 1. 写在前面 2. 效果图 3. 使用overlay类,地图添加动态图标 4. css设置gif图标 5. 完整代码 1. 写在前面 openlayer 里面支持 gif 图标上图的只有 ...

  5. 东京奥运会73枚动态图标刷爆朋友圈,中国网友怒赞:不愧是设计大国!

    本文转载自公众号"日本设计小站"(ID:japandesign),已获得其授权. 前不久,东京奥组委.残奥组委 公布了73个奥运比赛项目的动态图标 视觉效果堪称惊艳! 图标先以碎片 ...

  6. html动态图标代码,SVG动态图标是如何实现的

    这篇文章给大家分享的内容是SVG动态图标是如何实现的,有需要的朋友可以参考一下. 在 loading.io 上能看到好多效果惊艳的loading图标.它们都是用svg写成的,寥寥几行代码,比img图片 ...

  7. 酷炫的SVG 动态图标

    酷炫的SVG 动态图标                                                   在  loading.io 上能看到好多效果惊艳的loading图标.它们都 ...

  8. android 时钟动态图标,Android 8.1 Launcher3实现动态指针时钟功能

    本文主要实现功能,可能有不合理的地方 首先创建一个实现功能的工具里,直接上代码: import android.content.Context; import android.graphics.Bit ...

  9. html5 怎么写动态图形设计,如何用SVG制作酷炫动态图标?(代码实例)

    本章给大家介绍在html5中如何用SVG制作酷炫动态图标?(代码实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一.基本图形元素 svg有一些预定义的形状元素:矩形,圆形,椭圆 ...

最新文章

  1. 量子信息技术研究现状与未来
  2. Android赚钱的方法--界面嵌入有米广告(持续关注中)
  3. 一:Greenplum5.10.2 生产环境安装配置 (系统初始化、安装准备)
  4. console修改 ajax,【快速】chrome中console下ajax访问后台
  5. cron表达式 每隔8小时_cron表达式详解
  6. 从基于直方图的Graph-Cut到Grab-Cut
  7. 反序列化对象列表发生异常_通过反序列化漏洞,黑客能做什么呢?
  8. android 界面组件,安卓开发学习周第三篇——Android中的UI组件
  9. 远程主机访问mysql权限_如何给远程主机开启mysql远程登录权限
  10. 好玩Python--分析你的微信好友签名
  11. Java讲课笔记21:List接口及其实现类
  12. ENVI实现归一化建筑物指数(NDBI)实验操作
  13. 【Linux】之 从源代码安装软件(HelloWorld)
  14. Day11 Dear Japanese English Learners
  15. 30天自制操作系统(day1)
  16. 打破次元壁,让游戏角色在指尖跳舞,简易的 AR 教程
  17. 使用 SysRq 查看系统信息
  18. stricmp linux 头文件,Windows下程序向Linux下移植细节
  19. erp打印面单 php实现,利用店小秘ERP处理Shopee虾皮订单及打印面单
  20. 大数据技术之Canal入门篇

热门文章

  1. windbg学习笔记
  2. 移动App该如何保存用户密码
  3. 单片机 串行通信练习
  4. LibreOJ2302 - 「NOI2017」整数
  5. 百度搜索打不开第二页_百度快速排名的最新方法篇
  6. 你好2018▪再见2017
  7. 互融云保理业务系统助力企业快速拓展业务
  8. 云手机虚拟服务器地址是什么,云手机怎么搭建服务器地址
  9. EasyGBS级联时设备invite超时,平台可向上级回复code=400消息
  10. ob混淆解密在线工具