问题描述
基于 Vue3 + Vite + Element Plus 的项目中使用自动引入的方式引入 el-icon 后,在 el-input 中通过 prefix-icon 属性引入icon后图标无法显示的问题。
<el-input type="email" placeholder="请输入邮箱" prefix-icon="Message" />
引发原因
Element Plus 自动引入图标的实现原理是从 iconify 中自动导入所需要的图标,而 iconify 是一个图标库,包含 Element Plus、Ant Design 等图标集,在具体使用时,语法为 <i-图标集英文缩写-图标名 />,不能直接使用 element plus 中支持的 <图标名 /> 语法。
解决方法
通过插槽引入图标
<el-input type="email" placeholder="请输入邮箱">
<template #prefix>
<i-ep-message />
</template>
</el-input>
在基于Vue3、Vite和ElementPlus的项目里,当使用自动引入方式添加el-icon时,直接在el-input的prefix-icon属性中引用图标可能导致图标无法显示。这是因为ElementPlus自动引入图标依赖于iconify,需使用<i-图标集英文缩写-图标名/>的格式。为解决此问题,可以改用插槽方式引入图标,如示例所示。
1389

被折叠的 条评论
为什么被折叠?



