Badge 徽标数
图标右上角的红点、数字或者文字。用于告知用户,该区域的状态变化或者待处理任务的数量。规则
当用户有必要知晓每条更新时,应该使用数字型,eg:社交中的一对一的消息通知。
当用户只需知道大致有内容更新时,应该使用红点型,eg:社交中的群消息通知。
代码演示
简单的徽章展示。
只有个小红点,没有具体数字
import { Badge } from 'antd-mobile';
ReactDOM.render(
<div className="badge-container" style={{ padding: '40px 16px' }}>
<Badge text={9}>
<span className="head-example" />
</Badge>
<p style={{ marginBottom: 20 }} />
<Badge text={'new'}>
<span className="head-example" />
</Badge>
</div>
, mountNode);
import { Badge } from 'antd-mobile';
ReactDOM.render(
<div className="badge-container" style={{ padding: '40px 16px' }}>
<Badge dot>
<span className="dot-example" />
</Badge>
</div>
, mountNode);
数字大于99,会显示
.dot-example {
width: 0.56rem;
height: 0.56rem;
background: #ddd;
display: inline-block;
}
99+
结合列表的案例参考
import { Badge } from 'antd-mobile';ReactDOM.render( <div className="badge-container" style={{ padding: '40px 16px' }}> <Badge text={99}> <span className="head-example" /> </Badge> <p style={{ marginBottom: 20 }} /> <Badge text={108}> <span className="head-example" /> </Badge> </div>, mountNode);
import { List, Badge } from 'antd-mobile';
ReactDOM.render(
<div className="badge-container">
<form>
<List>
<List.Header>列表</List.Header>
<List.Body>
<List.Item extra="内容内容">
文本内容<Badge dot style={{ marginLeft: 12 }} />
</List.Item>
<List.Item extra="内容内容" arrow="horizontal">
文本内容<Badge text={'new'} style={{ marginLeft: 12 }} />
</List.Item>
<List.Item extra="内容内容" arrow="horizontal">
文本内容<Badge text={4} style={{ marginLeft: 12 }} />
</List.Item>
<List.Item extra="内容内容" arrow="horizontal">
文本内容<Badge text={100} style={{ marginLeft: 12 }} />
</List.Item>
</List.Body>
</List>
<List>
<List.Header>带icon</List.Header>
<List.Body>
<List.Item extra="内容内容" arrow="horizontal">
<Badge dot>
<span style={{ width: '0.52rem', height: '0.52rem', background: '#ddd', display: 'inline-block' }} />
</Badge>
<span style={{ marginLeft: 12 }}>小圆点</span>
</List.Item>
<List.Item
thumb="https://zos.alipayobjects.com/rmsportal/faMhXAxhCzLvveJ.png"
extra={<Badge text={77} />}
arrow="horizontal"
>
右侧内容
</List.Item>
</List.Body>
</List>
<List>
<List.Header>大号icon</List.Header>
<List.Body>
<List.Item extra="内容内容" arrow="horizontal">
<Badge text={9}>
<span style={{ width: '1.04rem', height: '1.04rem', background: '#ddd', display: 'inline-block' }} />
</Badge>
<span style={{ marginLeft: 12 }}>数字</span>
</List.Item>
<List.Item extra="内容内容" arrow="horizontal">
<Badge text={108}>
<span style={{ width: '1.04rem', height: '1.04rem', background: '#ddd', display: 'inline-block' }} />
</Badge>
<span style={{ marginLeft: 12 }}>超出99</span>
</List.Item>
</List.Body>
</List>
</form>
</div>
, mountNode);
.head-example {
width: 1.04rem;
height: 1.04rem;
background: #ddd;
display: inline-block;
}
API
成员 | 说明 | 类型 | 默认值 |
---|---|---|---|
text | 展示的数字或文案,当为数字时候,大于 overflowCount 时显示为 ${overflowCount}+,为 0 时隐藏 | String| Number | - |
dot | 不展示数字,只有一个小红点 | Boolean | false |
overflowCount | 展示封顶的数字值 | Number | 99 |