Skip to content

Avatar 头像

头像组件用于显示用户头像,支持显示文字头像和图片头像。

导入

js
import Avatar from '@/components/display/Avatar.vue'

用法

基础用法

通过 size 属性设置头像大小,text 属性设置显示文本,background 属性设置背景色。

vue
<template>
  <FlexRow :gap="20" wrap>
    <Avatar text="张三" :size="80" background="danger" />
    <Avatar text="李四" :size="80" background="success" />
    <Avatar text="王五" :size="80" background="primary" />
  </FlexRow>
  <Height :size="20" />
  <FlexRow :gap="20" wrap>
    <Avatar text="张" :size="60" background="danger" />
    <Avatar text="李" :size="60" background="success" />
    <Avatar text="王" :size="60" background="primary" />
  </FlexRow>
</template>

使用图片头像

通过 url 属性设置使用图片头像。

vue
<template>
  <FlexRow :gap="20" wrap>
    <Avatar url="https://imengyu.top/assets/images/test/2.jpg" :size="100" />
    <Avatar url="https://imengyu.top/assets/images/test/1.jpg" :size="80" />
    <Avatar url="https://imengyu.top/assets/images/test/3.jpg" :size="60" />
  </FlexRow>
</template>

方形头像

通过 round=false 属性设置方形头像。

vue
<template>
  <FlexRow :gap="20" wrap>
    <Avatar url="https://imengyu.top/assets/images/test/2.jpg" :round="false" :size="100" />
    <Avatar url="https://imengyu.top/assets/images/test/1.jpg" :round="false" :size="80" />
    <Avatar url="https://imengyu.top/assets/images/test/3.jpg" :round="false" :size="60" />
  </FlexRow>
</template>

随机背景颜色

通过 randomColor 属性设置随机背景颜色。

vue
<template>
  <FlexRow :gap="20" wrap>
    <Avatar text="用户" :size="80" randomColor />
    <Avatar text="用户" :size="80" randomColor />
    <Avatar text="用户" :size="80" randomColor />
  </FlexRow>
</template>

设置默认头像

通过 defaultAvatar 属性设置默认头像,当 url 为空或加载失败时显示。

vue
<template>
  <FlexRow :gap="20" wrap>
    <Avatar defaultAvatar="https://imengyu.top/assets/images/test/default-avatar.png" :size="80" />
    <Avatar url="无效的图片地址" defaultAvatar="https://imengyu.top/assets/images/test/default-avatar.png" :size="80" />
  </FlexRow>
</template>

API 参考

Avatar

头像组件。

Props

名称说明类型必填默认值
defaultAvatar默认头像,在 url 为空或者加载失败时使用此头像string-''
randomColor随机背景颜色boolean-false
url头像的图标URLstring-''
background背景颜色string-'background.imageBox'
text当未提供 url 时,支持在头像上显示文字,建议显示1-2个汉字string-''
textColor文字的颜色string-'text.content'
textStyle文字的样式object-{}
innerStyle头像的样式object-{}
size头像的大小number-70
radius头像圆角大小number-0
round头像是否是圆型,设置后 radius 无效boolean-true

Events

名称说明参数
click点击事件$event

主题变量

名称类型默认值说明
AvatarBackgroundstring'background.imageBox'头像背景颜色
AvatarSizenumber70头像默认大小
AvatarRadiusnumber0头像默认圆角大小
AvatarRoundbooleantrue头像默认是否为圆形
AvatarRoundRadiusstring'50%'圆形头像的圆角值
AvatarTextColorstring'text.content'文字颜色