Skip to content

XIcon — 自封装 SVG 图标

零三方依赖的 SVG 图标组件。所有图标来自 XIcon/icon/ 下的分类文件夹,构建时自动收集,无需手动注册。默认单色(currentColor),不传 color继承父级字体色

实时演示

vue
<XIcon name="code" />
<XIcon name="send" color="#22c55e" />
<XIcon name="like" color="#ef4444" />
<XIcon name="loading" spin />

Props

参数类型默认值说明
namestring—(必填)图标名(全局唯一)
colorstring''图标颜色;不传继承父级 color
sizenumber | string''数字按 px,字符串原样(如 "2em");不传随父级字号
spinbooleanfalse是否旋转(常用于 loading)

使用说明

  • 图标名全局唯一,即使跨分类也不重复。
  • XIcon/icon.js 通过 import.meta.glob('./icon/**/*.svg', { query: '?raw' }) 自动收集,拷贝目录时需连同 icon/ 子文件夹一起复制。
  • 新图标:在 XIcon/icon/<分类>/.svg(文件名即图标名),SVG 单色 fill 会被自动归一为 currentColor,无需改注册代码。

基于 VitePress + Vue 3 构建