Icon 图标

Vexip UI 提供 @vexip-ui/icons 作为图标库,该图标库基于 Font Awesome 6.x 的免费图标,将其 SVG 封装成了 Vue 组件。

你可以直接在这个 页面 查询图标(他们给图标起名一直很奇怪)。

当然你完全可以直接在 Icon 组件下放置任何 SVG 内容。如果你想要更换组件内置的图标,请参考 全局配置

图标组件命名是遵循一定的规则从原图标名转换过来的:

  • 一般情况下,就是把短横线小写命名换成首字母大写的驼峰命名(如:angle-down -> AngleDown
  • 如果是 regular 或者 brands 包下的图标,在名字的最后加上 R 或者 B 的后缀即可(如:regular/bell -> BellRbrands/github -> GithubB
  • 有少数图标是数字开头的,需要在名字前面加上 I 前缀(如:7 -> I7brands/500px -> I500pxB

代码示例#

API#

预设类型#

ts
type IconEffect = 'spin-in' | 'spin-out' | 'pulse-in' | 'pulse-out' | string
type IconRenderer = (
  props: Omit<IconProps, 'renderer'>,
  attrs: Record<string, any>,
  renderDefault: () => any
) => any

Icon 属性#

名称类型说明默认值始于
colorstring设置图标的颜色null2.2.5
effectIconEffect设置效果动画名称或一个自定义类名称null2.1.0
flip'horizontal' | 'vertical' | 'both'设置图标是否翻转null-
iconVueComponent图标 <svg> 组件null2.0.0
rendererIconRenderer自定义的渲染方法null2.2.11
rotatenumber | string设置图标的旋转角度null2.2.5
scalenumber | string设置图标的缩放比例1-
sizestring指定图标的大小null2.2.5
titlestring设置图标的标题属性''-