Element Plus动态Icon的使用方法
需要先学习这两个前置知识。
Icon 的基本使用方式
安装
npm install @element-plus/icons
在script标签中引入要使用的icon
import { Fold } from '@element-plus/icons'
在template标签中使用icon
<el-icon>
<Fold />
</el-icon>
动态 Icon 的使用方式
-
方式一
// 在main.ts注册Icon组件 import * as Icons from '@element-plus/icons' const app = createApp(App) Object.keys(Icons).forEach((key) => { app.componet(key, Icons[key as keyof typeof Icons]) // app.componet(key, Icons[key]) 等价于上面这行 })// 使用Icon组件 <component :is="Fold"></component> -
方式二
// 在main.ts注册Icon组件 import * as Icons from '@element-plus/icons' const app = createApp(App) const Icon = (props: {icon : string}) => { const { icon } = props; return createVNode(Icons[icon as keyof typeof Icons]); } app.component('Icon', Icon);// 使用Icon组件 <component :is="Fold"></component> -
方式三(官方)
// 在main.ts注册Icon组件 import * as ElementPlusIconsVue from '@element-plus/icons-vue' const app = createApp(App) for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) }// 使用Icon组件 <component :is="Fold"></component>
浙公网安备 33010602011771号