Перейти к содержимому
v2.5.0
English
Русский
Документация

Button

Button — основной компонент действия на базе ButtonBase с поддержкой размеров и растягивания на всю ширину для типовых действий в продукте.

Пропсы корня

ПропТипПо умолчанию
asChildboolean—
Если true, рендерит кнопку как дочерний компонент через Slot (например, из Radix UI). Включает полиморфный рендер — полезно, чтобы кнопка работала как ссылка или собственный тег.
sizeButtonSize'md'
Определяет размер кнопки. Влияет на отступы, размер шрифта и общие габариты.
fullWidthboolean—
Если true, кнопка растягивается на всю ширину контейнера.
variantButtonBaseVariant'primary'
Определяет визуальный стиль кнопки: цветовую схему и акцент.
appearanceButtonBaseAppearance'fill'
Настраивает структурный внешний вид кнопки (фон, рамка и т. д.).
disabledboolean—
Отключает кнопку при true. Запрещает взаимодействие и применяет визуальное отключённое состояние. Не применяется с asChild: отключённым состоянием владеет дочерний элемент, например через aria-disabled или ссылку без href.
classNamestring—
Необязательный собственный CSS-класс для элемента кнопки. Полезен для переопределений дизайн-системы или локальных стилей.
childrenReactNode—
Содержимое кнопки — текст, иконка или любой React-узел.
refRef<HTMLButtonElement>—
Ref, передаваемый на нативный элемент <button>. Даёт прямой доступ к DOM для управления фокусом или измерений.

Также принимает все атрибуты <button>.

Дочерние части

Button не предоставляет публичных дочерних частей.

Типы

  • ButtonProps
  • ButtonSize

Модель состояния

  • С точки зрения API компонента Button в основном не имеет состояния.
  • Отключённое состояние, загрузка и визуальное состояние обычно управляются снаружи.
  • asChild меняет семантику рендера, сохраняя стили кнопки VegaUI.
  • disabled не применяется с asChild, потому что семантикой владеет дочерний элемент. Отключённая ссылка — это <a> без href; добавьте aria-disabled="true", чтобы получить стили отключённого состояния и объявление скринридером.