Vue3+ElementPlus项目使用iconfont阿里图标

  回顾一下上篇文章的内容,Element UI 使用的是阿里巴巴的图标库,通过字体图标的用法(即使用 el-icon-xxx 的类名)来引入图标。。而Element Plus 抛弃了字体图标的用法,而直接使用了 svg 图标。
  那么在Element Plus框架内使用阿里图标又该如何实现?本篇文章就是讲述Vue3+ElementPlus项目使用iconfont阿里图标的方法。

  默认大家已经下载安装配置好elementplus。不知道的盆友们请翻一下之前的文章,都介绍的很清楚。;指路:vuecli3引入Element-plus

  Element Plus中的图标其实也是组件,我们也知道在Vue中可以直接在模板中使用<svg>标签来插入SVG图标代码。这就给我们提供了一个思路,将阿里图标也封装成一个通用组件,然后在vue3项目中导入注册,就像其他组件一样使用。
  那么开始实战吧~~

1、封装通用组件

  在components文件夹下新建一个iconfont文件夹,并在该文件夹下新建一个SvgIcon.vue

// 直接复制即可
<template>
    <svg aria-hidden="true">
        <use :xlink:href="iconName" />
    </svg>
</template
### 如何在Vue3项目使用Element Plus UI库引入Iconfont图标 为了在Vue3项目中集成 Iconfont 图标并配合 Element Plus 使用,可以按照如下方法操作: #### 安装依赖包 首先,在终端执行命令安装 `element-plus` 和 `axios` (用于加载在线字体文件)[^1]: ```bash npm install element-plus axios --save ``` #### 引入Element Plus和配置样式 接着,在项目的入口文件(通常是 main.js 或者 setup 文件)里全局注册 ElementPlus 组件以及导入 CSS 样式[^2]: ```javascript import { createApp } from &#39;vue&#39; import App from &#39;./App.vue&#39; // 导入整个 Element Plus 库及其默认主题样式表 import ElementPlus from &#39;element-plus&#39;; import &#39;element-plus/lib/theme-chalk/index.css&#39;; const app = createApp(App); app.use(ElementPlus); // 注册 Element Plus 插件 app.mount(&#39;#app&#39;); ``` #### 添加Iconfont链接到HTML头部 编辑 public/index.html 文件,在 `<head>` 部分加入阿里云矢量图标的 CDN 地址[^3]: ```html <!DOCTYPE html> <html lang="en"> <head> <!-- ... --> <link rel="stylesheet" href="//at.alicdn.com/t/font_8d5l8fzk5b87iudi.css"> <!-- 替换成自己的iconfont URL --> </head> <body> ... </body> </html> ``` #### 创建自定义组件来封装Iconfont 创建一个新的 Vue 单文件组件 `src/components/IconFont.vue`, 将其作为可重用的图标展示容器: ```vue <template> <span :class="&#39;iconfont &#39;+props.iconClass"></span> </template> <script setup> defineProps({ iconClass: String, }); </script> <style scoped> @import url(&#39;//at.alicdn.com/t/font_8d5l8fzk5b87iudi.css&#39;); /* 可选 */ .iconfont { font-family:"iconfont" !important; } </style> ``` #### 在页面上应用新的图标组件 最后可以在任何地方通过下面的方式调用这个新组建显示所需图标了[^4]: ```vue <!-- Example usage within another component template --> <el-button type="primary"> <template #icon> <IconFont icon-class="icon-home"/> </template> Home Page </el-button> ``` 以上就是在 Vue3 中结合 Element Plus 来使用 Iconfont 的基本流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值