百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Vue3 Element Plus 动态图标 vue-element-admin动态菜单

haoteby 2024-12-19 13:12 5 浏览

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']
    }
  },

效果如下:

相关推荐

“你的朋友宁愿听你吐槽,也不想参加你的葬礼”

来源:这里是美国嗨,最近过得还好吗?美国君今天在逛论坛时刷到了一条很热的帖子,了解完背后的故事后顿时觉得很治愈,想分享给大家~今天立冬,希望这些也可以温暖到你们的冬天这是一个组织在伦敦一座桥上立的一块...

浏览器代理插件Proxy SwitchyOmega安装与使用

个人博客:无奈何杨(wnhyang)个人语雀:wnhyang共享语雀:在线知识共享Github:wnhyang-OverviewProxySwitchyOmega轻松快捷地管理和切换多个代理设置...

可靠的IP代理网站大盘点,你用过哪些?

在互联网时代,IP代理成为了很多企业和个人必不可少的工具。无论是为了提升网络安全,还是进行数据抓取,选择一个可靠的IP代理服务至关重要。本文将为大家盘点几家可靠的IP代理网站。1.711Proxy...

三层交换机Super vlan技术Arp-proxy转发收藏

一、作用隔离广播风暴防止病毒攻击控制端口二层互访二、用户需求用户多vlan多IP地址是同一个网段,实现彼此之间二层隔离个别VLAN之间有互访的需求(需要用到对应的subvlan开启ARP代理)...

Docker设置http proxy代理(dockerfile 代理)

需求...

ShardingSphere-Proxy分库分表以及多租户安装使用

需求:你提供SAAS服务,你有你有2个租户(商户),各自的数据进各自的库,而你不希望你的微服务java里默认配置多个租户数据源,数据连接池太多,而且后面动态增加也不方便,诸如此类很多问题。...

nginx proxy_pass 头信息处理(nginxproxypass原理)

简介有些应用需要验证请求和响应的头部信息。而现在的架构基本都会在前端使用nginx进行转发。如果没有处理头部信息,就会导致信息丢失,无法通过验证,出现403等请求异常的情况。...

对话面试官:动态代理是如何实现的?JDK Proxy 和 CGLib 有啥区别?

推荐学习...

Proxy-Lite实战:3步部署+2个案例,轻松掌握轻量级网页自动化

大家好,我是何三,80后老猿,独立开发者一、Proxy-Lite模型概述...

Telegram代理指南:好处及设置步骤

Telegram是一款广受欢迎的通讯软件,它能让你和世界各地的用户进行交流。然而想要访问Telegram却受到限制怎么办?Telegram代理是一个完美的解决方案,它不仅能帮助用户绕过地理限制,还能提...

会Python?那么你一定要试一试mitmproxy

mitmproxy是一款工具,也可以说是python的一个包,使用这个工具可以在命令行上进行抓包(现在也可以在web页面上查看上抓的数据包了),还可以对所抓到的包进行脚本处理,非常有用。和...

IP地址与DNS是什么?搞懂它们,网络再也不卡!

今天聊聊很多人都会遇到的一个基础问题:IP地址和DNS。虽然这两个名词在我们日常上网时经常听到,但很多人可能对它们的具体含义和作用并不清楚。别担心,看完这篇文章你就能搞懂它们的区别和作用!IP地址,简...

十五张图带你快速入门 shardingsphere-proxy

ApacheShardingSphere是一款分布式的数据库生态系统,它包含两大产品:...

好玩的Docker之“NginxProxyManager”自动申请SSL证书教程

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:BIGWEI1992前言:本人一个非著名不专业的业余玩家,也是靠着经常看各种大佬的视频教程学习进步。把自己学习到的一些知识,利用业余时间出一...

Proxy 与 Object.defineProperty 优劣对比?

答:1:Proxy的优势:Proxy可以代理整个对象,而Object.defineProperty只能代理对象的某个属性...