Перейти к контенту

Badge

Значок генерирует маленький значок в правом верхнем углу своего дочернего(их) элемента(ов).

Простые значки

Примеры значков, содержащих текст, с использованием первичных и вторичных цветов. Знак применяется к своим детям.

44
<Badge badgeContent={4} color="secondary">
  <MailIcon />
</Badge>
<Badge badgeContent={4} color="error">
  <MailIcon />
</Badge>

Настраиваемые значки

Ниже находится пример кастомизации компонента. You can learn more about this in the overrides documentation page.

<IconButton aria-label="cart">
  <StyledBadge badgeContent={4} color="secondary">
    <ShoppingCartIcon />
  </StyledBadge>
</IconButton>

Видимость значка

Видимость значков можно контролировать с помощью свойства invisible.

1

Значок автоматически скрывается, когда свойство badgeContent равно нулю. Вы можете переопределить это с помощью пропа showZero.

0
<Badge color="secondary" badgeContent={0}>
  <MailIcon />
</Badge>
<Badge color="secondary" badgeContent={0} showZero>
  <MailIcon />
</Badge>

Максимальное значение

Вы можете использовать проп max, чтобы ограничить значение значка.

9999+999+
<Badge color="secondary" badgeContent={99}>
  <MailIcon />
</Badge>
<Badge color="secondary" badgeContent={100}>
  <MailIcon />
</Badge>
<Badge color="secondary" badgeContent={1000} max={999}>
  <MailIcon />
</Badge>

Значок-точка

Проп dot превращает значок в маленькую точку. Это можно использовать как уведомление о том, что что-то изменилось без количества.

<Badge color="secondary" variant="dot">
  <MailIcon />
</Badge>

Наложение значка

Вы можете использовать проп overlap для размещения значка относительно краев элемента.

<Badge color="secondary" badgeContent=" ">
  {rectangle}
</Badge>
<Badge color="secondary" badgeContent=" " variant="dot">
  {rectangle}
</Badge>
<Badge color="secondary" overlap="circular" badgeContent=" ">
  {circle}
</Badge>
<Badge color="secondary" overlap="circular" badgeContent=" " variant="dot">
  {circle}
</Badge>

Выравнивание значка

Вы можете использовать проп anchorOrigin для перемещения значка в любой угол элемента.

Vertical
Horizontal
11299+999+
<Badge
  anchorOrigin={{
    vertical: 'top',
    horizontal: 'right',
  }}
>

Unstyled badge

5
<StyledBadge badgeContent={5} overlap="circular">
  <BadgeContent />
</StyledBadge>
<StyledBadge badgeContent={5} variant="dot" overlap="circular">
  <BadgeContent />
</StyledBadge>