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

Element-Plus 图标自动导入

🚀 作者主页: 有来技术
🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot
🌺 仓库主页: Gitee 💫 Github 💫 GitCode
💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正!

目录

  • 引言
  • 安装 Element-Plus
  • 安装自动导入依赖
  • 安装自动导入图标依赖
  • 自动导入配置
    • .eslintrc.cjs
    • tsconfig.json
    • vite.config.ts
  • 自动导入图标使用
  • 自动导入图标样式
  • 开源项目

引言

Element-Plus 官方提供了四种 安装图标方式 方式,本文将详细介绍如何通过自动导入方式。从 Iconify 中自动导入任何图标集。
本篇参考官方 自动导入模板。

安装 Element-Plus

npm install element-plus

安装自动导入依赖

Element-Plus 自动导入(推荐)

npm install -D unplugin-auto-import unplugin-vue-components 

安装自动导入图标依赖

Element-Plus 图标自动导入

npm i -D unplugin-icons

自动导入配置

.eslintrc.cjs

自动导入函数 eslint 规则引入

"extends": [
    "./.eslintrc-auto-import.json"
]

tsconfig.json

自动导入TS类型声明文件引入

{
  "include": ["src/**/*.d.ts"]
}

vite.config.ts

import path from 'path'
import { defineConfig } from 'vite'
import Vue from '@vitejs/plugin-vue'
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'

const pathSrc = path.resolve(__dirname, 'src')

export default defineConfig({
  resolve: {
    alias: {
      '@': pathSrc,
    },
  },
  plugins: [
    Vue({
      reactivityTransform: true,
    }),
    AutoImport({
      // Auto import functions from Vue, e.g. ref, reactive, toRef...
      // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等
      imports: ['vue', '@vueuse/core'],
      dirs: [path.resolve(pathSrc, 'composables')],

      // Auto import functions from Element Plus, e.g. ElMessage, ElMessageBox... (with style)
      // 自动导入 Element Plus 相关函数,如:ElMessage, ElMessageBox... (带样式)
      resolvers: [
        ElementPlusResolver(),

        // Auto import icon components
        // 自动导入图标组件
        IconsResolver({}),
      ],
      vueTemplate: true,
      dts: path.resolve(pathSrc, 'typings', 'auto-imports.d.ts'),
    }),

    Components({
      resolvers: [
        // Auto register icon components
        // 自动注册图标组件
        IconsResolver({
          enabledCollections: ['ep'],
        }),
        // Auto register Element Plus components
        // 自动导入 Element Plus 组件
        ElementPlusResolver(),
      ],

      dts: path.resolve(pathSrc, 'typings', 'components.d.ts'),
    }),

    Icons({
      autoInstall: true,
    }),
  ],
})

自动导入图标使用

默认名称格式: i-ep-图标名 ,图标名在 Element-Plus 官方-图标集合 查询

	<div class="avatar">
	  <img :src="userStore.user.avatar + '?imageView2/1/w/80/h/80'" />
	  <!-- i-ep-图标名(CaretBottom ) -->
	  <i-ep-CaretBottom />
	</div>

效果如下:

自动导入图标样式

如何修改通过自动导入图标的大小和颜色样式?

 <el-icon :size="12" color="#409eff">
   <i-ep-CaretBottom />
 </el-icon>

在这里插入图片描述

开源项目

  • 微服务商城项目
GithubGitee
开源组织有来开源组织有来开源组织
后端youlai-mall 📖youlai-mall 📖
前端mall-admin🌎mall-admin 🌎
移动端mall-app 🌎mall-app 🌎
  • 前后端分离项目
GithubGitee
开源组织有来开源组织有来开源组织
后端youlai-boot 📖youlai-boot 📖
前端vue3-element-admin 🌎vue3-element-admin 🌎

http://www.kler.cn/a/147497.html

相关文章:

  • 基于Matlab的碎纸片的自动拼接复原技术
  • World of Warcraft [WeakAuras]Barney Raid Kit - Collapsing Star Indicator
  • github和Visual Studio
  • go反射深入学习
  • 【Linux】HTTP协议和HTTPS加密
  • 鸿蒙之多选框(Checkbox)
  • 【密码学】【多方安全计算】不经意传输(Oblivious Transfer,OT)
  • JS作用域与作用域链
  • 2.3基于springboot养老院管理系统
  • 【Android知识笔记】性能优化专题(四)
  • springboot+vue实现websocket通信实例,进入页面建立连接
  • 浏览器触发下载Excel文件-Java实现
  • 一些可能被忽视的 Vue3 API 附带案例
  • 5G智慧工地整体解决方案:文件全文115页,附下载
  • Kubernetes之kubeadm日志展示篇—fiendweb日志展示平台部署
  • Jetson orin(Ubuntu20.04)不接显示器无法输出VNC图像解决办法以及vnc安装记录
  • 基于Python的南京二手房数据可视化分析的设计与实现
  • 华为认证 | HCIE必须要培训才能考试?
  • 【Linux】初识重定向(输入输出)
  • c语言新龟兔赛跑
  • Less的函数的介绍
  • wpf 使用 StringFormat
  • 微信小程序显示二维码?
  • 【SpringCloud】认识微服务、服务拆分以及远程调用
  • 【深度学习】gan网络原理生成对抗网络
  • 零基础可以学编程吗,不懂英语怎么学编程,中文编程工具实例