Icon
Icon component that resolves icons through a customizable resolver. Register your icon library using registerCustomIconResolver.
Import
typescript
import { Icon } from 'vuiii'Basic Usage
vue
// Basic usage import { Icon } from 'vuiii'
<Icon name="check" />
<Icon name="user" size="large" />More Examples
vue
// Different sizes
<Icon name="star" size="small" />
<Icon name="star" size="normal" />
<Icon name="star" size="large" />vue
// Register custom icon resolver (typically in app setup) import { registerCustomIconResolver } from 'vuiii' import {
defineAsyncComponent } from 'vue' registerCustomIconResolver((name) => { return defineAsyncComponent(() =>
import(`./icons/${name}.vue`)) })vue
// With Heroicons import * as HeroIcons from '@heroicons/vue/24/outline' registerCustomIconResolver((name) => { const
pascalName = name.split('-').map(s => s[0].toUpperCase() + s.slice(1)).join('') + 'Icon' return HeroIcons[pascalName] })
// Then use in templates
<Icon name="user" />
// resolves to UserIcon
<Icon name="check" />
// resolves to CheckIconStorybook
For interactive examples with all variants, see Icon in Storybook.