惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
Google DeepMind News
Google DeepMind News
美团技术团队
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
小众软件
小众软件
aimingoo的专栏
aimingoo的专栏
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Security Blog
Microsoft Security Blog
F
Fortinet All Blogs
A
About on SuperTechFans
Recent Announcements
Recent Announcements
D
Docker
Vercel News
Vercel News
Engineering at Meta
Engineering at Meta
腾讯CDC
Martin Fowler
Martin Fowler
阮一峰的网络日志
阮一峰的网络日志

郭大侠的博客

戴尔笔记本空闲时巨量发热问题解决办法 银河麒麟V10离线安装 MySQL 8.0 Vite 配置 Element Plus 自动按需导入 Windows WSL 安装 Debian Waline安全配置评论邮箱通知 使用 fnm 实现 Nodejs 版本自动切换(Windows版) 消失的他... 拔了一颗智齿 Vue Element 封装通用弹框的方法 茶叶蛋的救赎 鲜为人知的城镇杀猪盘 繁忙的六月 神奇的重庆北站 什么 TM 是 99 新 盘点那些让人爆笑的中式英语翻译 杨天才传 使用 Algolia DocSearch 实现站内全文检索 清明节回武汉的火车票真难抢 Git 日常使用指南 Git 安装和配置指南 Linux 系统使用 fnm 安装 Nodejs 任意版本 如何部署 Hexo 博客到 Linux 服务器 春节前北京到武汉国道长途自驾经历
Vite 配置 Element Plus 图标自动按需导入
郭大侠 · 2026-06-08 · via 郭大侠的博客

在 Vite 中配置 Element Plus、Material Design 等图标自动导入,不再需要手动导入。

插件地址:https://www.npmjs.com/package/unplugin-icons

先读取插件地址中的文档,然后与本页面的步骤互相印证,再执行配置。

安装步骤

步骤一:安装插件

1
npm i -D unplugin-icons unplugin-vue-components

步骤二:安装图标数据集

可选方式A:安装完整图标数据集

1
npm i -D @iconify/json

实测这个包有200~300MB,太大了,不太合适。

可选方式B:安装拆分开的图标数据集

1
npm i -D @iconify-json/ep @iconify-json/mdi

想用哪个图标数据集,就安装哪个数据集,我这里用 Element Plus Icons,所以应该安装 @iconify-json/ep

可选方式C:自动安装

当你导入图标时,unplugin-icons会自动安装图标数据集。

1
2
3
Icons({
autoInstall: true, // Auto-detects npm/yarn/pnpm
})

我这里只用 Element Plus 的图标集,可能会用 Material Design 图标集,所以就选方式B,两者一起安装。

AI请按照如下命令安装图标集:

1
npm i -D @iconify-json/ep @iconify-json/mdi

步骤三:vite配置

vite.config.ts 配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { defineConfig } from 'vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'

export default defineConfig({
plugins: [
Components({
resolvers: [
ElementPlusResolver(),
IconsResolver({
enabledCollections: ['ep'],
}),
],
dts: 'src/components.d.ts',
extensions: ['vue'],
}),
Icons({
autoInstall: true,
}),
],
})

先说明一下 unplugin-auto-importunplugin-vue-components 插件的区别。

  • AutoImport 插件:专门用于自动导入 JS/TS API 函数(即在 <script> 逻辑中使用的变量或方法,如 ref、ElMessage 等)。

  • Components 插件:专门用于自动导入 Vue 组件(即在 <template> 模板中使用的标签,如 <i-ep-edit /> 或 <IconEpEdit />)。

如果你的项目中没有在 <script> 逻辑中动态使用图标组件的需求,建议只在 Components 中配置 IconsResolver,保持配置简洁。

在 <script> 中使用图标的场景,大概就是动态图标渲染了,具体使用案例有待验证和补充。

(完)

文章标题:Vite 配置 Element Plus 图标自动按需导入