Avatar头像

用来代表用户或事物,支持图片、图标或字符展示。

代码演示

Avatar 头像 - 图1

基本

头像有三种尺寸,两种形状可选。

  1. import { Avatar } from 'choerodon-ui';
  2. ReactDOM.render(
  3. <div>
  4. <div>
  5. <Avatar size={64} icon="person" />
  6. <Avatar size="large" icon="person" />
  7. <Avatar icon="person" />
  8. <Avatar size="small" icon="person" />
  9. </div>
  10. <div>
  11. <Avatar shape="square" size={64} icon="person" />
  12. <Avatar shape="square" size="large" icon="person" />
  13. <Avatar shape="square" icon="person" />
  14. <Avatar shape="square" size="small" icon="person" />
  15. </div>
  16. </div>,
  17. mountNode);

Avatar 头像 - 图2

自动调整字符大小

对于字符型的头像,当字符串较长时,字体大小可以根据头像宽度自动调整。

  1. import { Avatar, Button } from 'choerodon-ui';
  2. const UserList = ['U', 'Lucy', 'Tom', 'Edward'];
  3. const colorList = ['#f56a00', '#7265e6', '#ffbf00', '#00a2ae'];
  4. class Autoset extends React.Component {
  5. constructor(props) {
  6. super(props);
  7. this.state = {
  8. user: UserList[0],
  9. color: colorList[0],
  10. };
  11. }
  12. changeUser = () => {
  13. const index = UserList.indexOf(this.state.user);
  14. this.setState({
  15. user: index < UserList.length - 1 ? UserList[index + 1] : UserList[0],
  16. color: index < colorList.length - 1 ? colorList[index + 1] : colorList[0],
  17. });
  18. }
  19. render() {
  20. return (
  21. <div>
  22. <Avatar style={{ backgroundColor: this.state.color, verticalAlign: 'middle' }} size="large">
  23. {this.state.user}
  24. </Avatar>
  25. <Button size="small" style={{ marginLeft: 16, verticalAlign: 'middle' }} onClick={this.changeUser}>
  26. Change
  27. </Button>
  28. </div>
  29. );
  30. }
  31. }
  32. ReactDOM.render(<Autoset />,
  33. mountNode);

Avatar 头像 - 图3

类型

支持三种类型:图片、Icon 以及字符,其中 Icon 和字符型可以自定义图标颜色及背景色。

  1. import { Avatar } from 'choerodon-ui';
  2. ReactDOM.render(
  3. <div>
  4. <Avatar icon="person" />
  5. <Avatar>U</Avatar>
  6. <Avatar>USER</Avatar>
  7. <Avatar src="https://zos.alipayobjects.com/rmsportal/ODTLcjxAfvqbxHnVXCYX.png" />
  8. <Avatar style={{ color: '#f56a00', backgroundColor: '#fde3cf' }}>U</Avatar>
  9. <Avatar style={{ backgroundColor: '#87d068' }} icon="user" />
  10. </div>,
  11. mountNode);

Avatar 头像 - 图4

带徽标的头像

通常用于消息提示。

  1. import { Avatar, Badge } from 'choerodon-ui';
  2. ReactDOM.render(
  3. <div>
  4. <span style={{ marginRight: 24 }}>
  5. <Badge count={1}><Avatar shape="square" icon="person" /></Badge>
  6. </span>
  7. <span>
  8. <Badge dot><Avatar shape="square" icon="person" /></Badge>
  9. </span>
  10. </div>,
  11. mountNode);

API

参数说明类型默认值
icon设置头像的图标类型,参考 Icon 组件string-
shape指定头像的形状Enum{ 'circle', 'square' }circle
size设置头像的大小Enum{ 'large', 'small', 'default' }default
src图片类头像的资源地址string-