Обзор
ИспользуйтеListItemButton для строк действий и отдельных кнопок выбора. Он сочетает компоновку ListItem с нативной кнопкой, включая активацию клавишами Enter и Space, фокус и поведение в отключенном состоянии. По умолчанию используется type="button".
Использование
Действия и отключенное состояние
ПередавайтеonClick и disabled напрямую. Отключенные кнопки используют соответствующее оформление строки, предотвращают активацию и исключаются из порядка обхода по Tab.
focusableWhenDisabled, чтобы отключенная кнопка могла получать фокус. Она использует aria-disabled и продолжает блокировать активацию. Нативные атрибуты кнопки, события, стили, имена классов и ref HTMLButtonElement передаются кнопке. События всплывают обычным образом; вызывающая сторона задает необходимую политику stopPropagation() или preventDefault().
Выбор и визуальные слоты
Ваше приложение управляет независимыми состояниямиactive, selected и focused. Используйте active для открытой или текущей строки. Используйте selected вместе с соответствующим доступным состоянием, например aria-pressed для кнопки-переключателя. focused выделяет строку, не перемещая DOM-фокус. Индикаторы и подсказки сочетаний клавиш носят декоративный характер; ваше приложение регистрирует сочетания клавиш и обрабатывает навигацию.
startIcon, endIcon, description и descriptionPlacement для вспомогательного содержимого. color="danger" обозначает разрушительное действие. shortcutJoinLabel управляет текстом между последовательными сочетаниями клавиш, а hasSubmenu отображает индикатор подменю.
Многострочное вспомогательное содержимое
УстановитеdescriptionPlacement="below", чтобы разместить вспомогательный текст под меткой. Метка сохраняет свое поведение при усечении. Передайте Text с truncate или lineClamp в качестве description, когда требуется более короткий предварительный просмотр. Размещения inline и end сохраняют существующий внешний вид.
active применяет фон текущей строки. Установите selectionAppearance="accent" для акцентной заливки выбранных строк при любом размещении описания; значение по умолчанию сохраняет существующее оформление выбора на основе индикатора. focused применяет общий фон выделения; контур видимого фокуса соответствует фактическому фокусу клавиатуры. Эти свойства не добавляют доступное состояние и не перемещают фокус. Нативная активация кнопки и поведение отключенного состояния остаются без изменений.
Независимые элементы управления
Размещайте независимые кнопки и флажки рядом сListItemButton, чтобы каждый из них сохранял собственные фокус и активацию. Не вкладывайте их в слоты содержимого или значка. У компонента нет слота actions. Используйте ListItem с корневым элементом div по умолчанию для строки с независимыми элементами управления, а также задайте поведение отключенного состояния и распространение событий для каждого элемента управления.
ListItem для пассивного содержимого, ссылок или пользовательских семантических контейнеров. Используйте существующие части элементов Dropdown и Select в их всплывающих контейнерах, которые предоставляют роли и навигацию с помощью клавиатуры.
Свойства
boolean
Marks the open or current item independently of selection and focus. The caller supplies accessible state.
"danger" | "neutral"
Color of the text and icons.
danger marks a destructive action.ReactNode
Supporting text, placed according to
descriptionPlacement."below" | "end" | "inline"
Places supporting content inline after the label, at the end, or below it with wrapping. Inline is the default.
boolean
по умолчанию:"false"
Disables activation and applies the matching row appearance.
ReactNode
Icon rendered after the content.
boolean
по умолчанию:"false"
Keeps a disabled button focusable with aria-disabled while preventing activation.
boolean
Highlights the row without moving DOM focus.
Displays a decorative submenu indicator.
"check" | "checkbox" | "none"
Selection indicator: a check icon after the content or a checkbox before
it.
Ref<HTMLButtonElement>
Ref to the native HTMLButtonElement.
boolean
Applies selected styling and a decorative indicator. The caller supplies selection state and accessible semantics.
"accent" | "default"
Selection styling independent of description placement.
default preserves indicator-based styling; accent fills selected rows with the accent background.ShortcutDefinition
Displays decorative shortcut hints. The caller registers the shortcuts.
string
Text between sequential shortcut steps. Defaults to
then; pass an empty string to omit it.ReactNode
Icon rendered before the content.