#Avatar 头像
#介绍
显示用户头像、首字母或备用图标。
#引入
import { Avatar } from "@taroify/core"#代码演示
#基础用法
设置 style 可以修改,背景颜色
<Avatar>P</Avatar>
<Avatar style={{ background: "green" }}>N</Avatar>
<Avatar style={{ background: "pink" }}>HP</Avatar>#尺寸
设置 size 属性后,可以选择四个大小。
<Avatar src="https://joesch.moe/api/v1/random" size="mini" />
<Avatar src="https://joesch.moe/api/v1/random" size="small" />
<Avatar src="https://joesch.moe/api/v1/random" size="medium" />
<Avatar src="https://joesch.moe/api/v1/random" size="large" />#形状
通过 variant 属性来设置形状。
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" shape="square" />
<Avatar src="https://joesch.moe/api/v1/random" shape="rounded" />#群组
最多显示5个。
<Avatar.Group total={24}>
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
</Avatar.Group>#最大
通过 max 属性最大可展示数量,最多显示5个。
<Avatar.Group max={3}>
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
<Avatar src="https://joesch.moe/api/v1/random" />
</Avatar.Group>#图标
<Avatar style={{ background: "red" }}>
<Cross />
</Avatar>
<Avatar style={{ background: "pink" }}>
<LocationOutlined />
</Avatar>
<Avatar style={{ background: "green" }}>
<SettingOutlined />
</Avatar>#徽章
<Badge className="avatar-dot" dot position="bottom-right">
<Avatar src="https://joesch.moe/api/v1/random" />
</Badge>
<Badge
className="avatar-avatar"
content={<Avatar src="https://joesch.moe/api/v1/random" />}
position="bottom-right"
>
<Avatar src="https://joesch.moe/api/v1/random" />
</Badge>.avatar-dot {
bottom: 2px * 2;
right: 6px * 2,
}
.avatar-avatar {
--badge-background-color: transparent;
--badge-padding: 0;
--badge-size: 12px * 2;
--avatar-size: var(--badge-size);
bottom: 2px * 2;
right: 6px * 2,
}#API
#Avatar Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| src | 传入图片的链接,传入之后嵌套内容不展示 | string | - |
| alt | 图片不显示时的文本内容 | string | - |
| shape | 形状,可选值为 square rounded circle | string | circle |
| size | 大小,可选值为 mini small medium large | string | medium |
#Avatar.Group Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| shape | 形状,可选值为 square rounded circle | string | circle |
| spacing | 间距,可选值为 small medium large | string | medium |
| limit | 显示的最大头像个数 | number | - |
| total | 头像总数。用于计算额外头像的数量。 | string | - |
#主题定制
#样式变量
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。
| 名称 | 默认值 | 描述 |
|---|---|---|
| --avatar-color | var(--white) | - |
| --avatar-background-color | var(--gray-5) | - |
| --avatar-border-color | var(--white) | - |
| --avatar-border-width | 2PX | - |
| --avatar-font-weight | var(--font-weight-bold) | - |
| --avatar-font-family | Roboto, Helvetica, Arial, sans-serif | - |
| --avatar-font-size-mini | var(--avatar-font-size, var(--font-size-xs)) | - |
| --avatar-font-size-small | var(--avatar-font-size, var(--font-size-sm)) | - |
| --avatar-font-size-medium | var(--avatar-font-size, var(--font-size-md)) | - |
| --avatar-font-size-large | var(--avatar-font-size, var(--font-size-lg)) | - |
| --avatar-border-radius-mini | var(--avatar-border-radius, 2px * $hd) | - |
| --avatar-border-radius-small | var(--avatar-border-radius, 4px * $hd) | - |
| --avatar-border-radius-medium | var(--avatar-border-radius, 5px * $hd) | - |
| --avatar-border-radius-large | var(--avatar-border-radius, 6px * $hd) | - |
| --avatar-size-mini | var(--avatar-size, 16px * $hd) | - |
| --avatar-size-small | var(--avatar-size, 26px * $hd) | - |
| --avatar-size-medium | var(--avatar-size, 38px * $hd) | - |
| --avatar-size-large | var(--avatar-size, 56px * $hd) | - |
| --avatar-spacing-mini | var(--avatar-spacing, var(--padding-xs)) | - |
| --avatar-spacing-small | var(--avatar-spacing, var(--padding-sm)) | - |
| --avatar-spacing-medium | var(--avatar-spacing, var(--padding-md)) | - |
| --avatar-spacing-large | var(--avatar-spacing, var(--padding-lg)) | - |