element-Plus按需加载以及注意事项
一、依赖包安装
1 | pnpm install element-plus |
二、Volar 支持
1 | / tsconfig.json |
三、按需自动导入
3.1、安装
安装自动导入组件和函数的插件
1 | pnpm add unplugin-vue-components unplugin-auto-import -D |
3.2、配置
安装完成会默认在根目录生成auto-imports.d.ts和components.d.ts两个文件ts声明文件
1 | / vite.config.ts配置 |
将生成的声明文件关联到ts的配置文件中去
1 | / tsconfig.app.json |
问题:只要新加组件和和函数就又会在根目录生成两个声明文件,但是我需要生成的文件在types文件中,怎么做呢? 在vite.config.ts文件中配置声明文件存储的路径
1 | / vite.config.ts |
怎么查看components.d.ts声明文件生效?鼠标放到使用的elementPlus组件上,会出现如图的ts。

忽略auto-imports.d.ts和components.d.ts上传至仓库
1 | types/* |
四、element-plus 样式问题
当你使用unplugin-vue-components来引入ui库的时候,message, notification,toast 等引入样式不生效(弹窗在底部)

4.1、全量引入(不推荐)
在main.ts中引入
1 | import 'element-plus/dist/index.css' |
4.1、按需自动引入
1)安装
1 | pnpm add vite-plugin-style-import -D |
2)配置文件
在 vite.config.ts 配置
1 | import { createStyleImportPlugin, ElementPlusResolve } from 'vite-plugin-style-import' |
五、icon图标自动导入
如果使用unocss原子CSS引擎,也可使用unocss的icon图标引入,详细见unocss使用教程
5.1、安装
使用unplugin-icons和unplugin-auto-import从iconify中自动导入任何图标集,若安装unplugin-auto-import则不需再次安装
1 | pnpm add -D unplugin-icons unplugin-auto-import |
5.2、配置文件
1)vite.config.ts配置
1 | import Icons from 'unplugin-icons/vite' |
网上很多教程有写在AutoImport中也需设置IconsResolver(),实际在AutoImport 下的 IconsResolver 中可以不添加 IconsResolver 配置,只在 Components 下的 IconsResolver 中进行相应配置就行
2)自动导入icon 图标的格式
{prefix}-{collection}-{icon}
即 ~ “前缀-使用的图标库名称-图标名” 格式形式来使用的,element-plus 的图标库名称是 “ep”,默认前缀是 “i”,需要改的话可以在 Components 配置项 的 IconsResolver 的prefix中进行相应配置
以elementPlus的icon为例(iconify图标库中的也一样)
1 | <i-ep-Bowl /> |
如果设置属性例如颜色、大写则必须使用<el-icon>包裹,然后在其上写属性
1 | <el-icon :size="60" color="red"> |
3)IconsResolver配置解析
当IconsResolver()不设置参数的时候,iconify图标库中的图标都能使用(这里面也包含了elementPlus的图标)
1 | import Icons from 'unplugin-icons/vite' |

怎么使用iconify图标库中的图标呢?举例子


当IconsResolver()设置参数的时候,自定义图标格式前缀、限制使用图标库。
1 | import Icons from 'unplugin-icons/vite' |
1 | // xxxx.vue |

怎么去看enabledCollections中定义的这个图标库名称呢?

注意
当没做图标库限制的时候,使用了哪些图标库就会自动安装这个图标库的依赖,因此更建议使用IconsResolver({})自定义的去限制图标库

