--- title: 图标 icon: grommet-icons:emoji createTime: 2024/08/18 22:58:39 permalink: /guide/components/icon/ --- ## 概述 图标组件 ``,根据 `markdown.icon` 配置,从不同的图标库加载图标。 [主题还提供了 markdown 语法支持,点击了解更多](../markdown/icons.md){.read-more} ## 配置 ```ts title=".vuepress/config.ts" twoslash import { defineUserConfig } from 'vuepress' import { plumeTheme } from 'vuepress-theme-plume' export default defineUserConfig({ theme: plumeTheme({ markdown: { // [!code ++:3] icon: { provider: 'iconify' } // 默认支持 } }) }) ``` ```ts interface IconOptions { /** * 图标提供商 */ provider: 'iconify' | 'iconfont' | 'fontawesome' /** * 图标默认前缀,不同的提供商默认前缀不同 * - iconify - 默认为 `''` * - iconfont - 默认为 `iconfont icon-` * - fontawesome - 默认为 `fas` */ prefix?: string /** * 图标资源地址 */ assets?: IconAssetLink | IconAssetLink[] size?: string | number color?: string } ``` ## Props :::: field-group ::: field name="name" type="string" default="''" optional 图标名称,当 `markdown.icon.prefix` 有值时,`name` 中的前缀可以省略 ::: ::: field name="color" type="string" default="'currentcolor'" optional 图标颜色 ::: ::: field name="size" type="string" default="'1em'" optional 图标大小 ::: :::: ## 示例 **输入:** ```md :no-line-numbers - home - - vscode - - twitter - ``` **输出:** - home - - vscode - - twitter -