Badge徽标数

    一般出现在通知图标或头像的右上角,用于显示需要处理的消息条数,通过醒目视觉形式吸引用户处理。

    基本

    简单的徽章展示,当 为 0 时,默认不显示,但是可以使用 showZero 修改为显示。

    Badge 徽标数 - 图2

    超过 overflowCount 的会显示为 ${overflowCount}+,默认的 overflowCount99

    1. import { Badge } from 'antd';
    2. ReactDOM.render(
    3. <div>
    4. <Badge count={99}>
    5. <a href="#" className="head-example" />
    6. </Badge>
    7. <Badge count={100}>
    8. <a href="#" className="head-example" />
    9. </Badge>
    10. <Badge count={99} overflowCount={10}>
    11. <a href="#" className="head-example" />
    12. </Badge>
    13. <Badge count={1000} overflowCount={999}>
    14. <a href="#" className="head-example" />
    15. </Badge>
    16. </div>,
    17. mountNode,
    18. );

    用 a 标签进行包裹即可。

    1. import { Badge } from 'antd';
    2. ReactDOM.render(
    3. <a href="#">
    4. <Badge count={5}>
    5. <span className="head-example" />
    6. </Badge>
    7. </a>,
    8. mountNode,
    9. );

    Badge 徽标数 - 图4

    状态点

    用于表示状态的小圆点。

    不包裹任何元素即是独立使用,可自定样式展现。

    1. import { Badge } from 'antd';
    2. <div>
    3. <Badge count={25} />
    4. <Badge
    5. count={4}
    6. style={{ backgroundColor: '#fff', color: '#999', boxShadow: '0 0 0 1px #d9d9d9 inset' }}
    7. />
    8. <Badge count={109} style={{ backgroundColor: '#52c41a' }} />
    9. </div>,
    10. mountNode,
    11. );

    讨嫌的小红点

    没有具体的数字。

    1. import { Badge, Icon } from 'antd';
    2. ReactDOM.render(
    3. <div>
    4. <Badge dot>
    5. <Icon type="notification" />
    6. </Badge>
    7. <Badge count={0} dot>
    8. <Icon type="notification" />
    9. </Badge>
    10. <Badge dot>
    11. <a href="#">Link something</a>
    12. </Badge>
    13. </div>,
    14. mountNode,
    15. );

    Badge 徽标数 - 图7

    展示动态变化的效果。

    多彩徽标

    3.16.0 后新增。我们添加了多种预设色彩的徽标样式,用作不同场景使用。如果预设值不能满足你的需求,可以设置为具体的色值。

    1. import { Badge } from 'antd';
    2. const colors = [
    3. 'pink',
    4. 'red',
    5. 'yellow',
    6. 'orange',
    7. 'cyan',
    8. 'blue',
    9. 'purple',
    10. 'magenta',
    11. 'volcano',
    12. 'gold',
    13. 'lime',
    14. ];
    15. ReactDOM.render(
    16. <div>
    17. <h4 style={{ marginBottom: 16 }}>Presets:</h4>
    18. <div>
    19. {colors.map(color => (
    20. <div key={color}>
    21. <Badge color={color} text={color} />
    22. </div>
    23. ))}
    24. </div>
    25. <h4 style={{ margin: '16px 0' }}>Custom:</h4>
    26. <div>
    27. <Badge color="#f50" text="#f50" />
    28. <br />
    29. <Badge color="#2db7f5" text="#2db7f5" />
    30. <br />
    31. <Badge color="#87d068" text="#87d068" />
    32. <br />
    33. <Badge color="#108ee9" text="#108ee9" />
    34. </div>
    35. </div>,
    36. mountNode,
    37. );
    1. .ant-tag {
    2. margin-bottom: 8px;
    1. <Badge count={5} />