Button

Действие или ссылка с размером, цветом, темой и состоянием загрузки.

Для действия используйте onClick, для перехода — href. loading показывает выполнение операции; disabled блокирует действие.

Живой пример

Настройки примера

Использование

import { Button } from '@prosazhin/pbcomponents';

<Button
  size='m'
  theme='filled'
  color='primary'
>
  Button
</Button>;

API компонента

PropТип / вариантыНазначениеПо умолчанию
childrenstringСодержимое компонента.
size'xs' | 's' | 'm' | 'l'xs · s · m · lРазмер компонента.m
theme'filled' | 'light' | 'border' | 'ghost'filled · light · border · ghostОформление кнопки.filled
color'primary' | 'secondary' | 'success' | 'danger'primary · secondary · success · dangerСмысловой цвет.primary
disabledbooleanБлокирует взаимодействие.false
loadingbooleanПоказывает процесс выполнения.false
leftIconSvgTypenone · check · search · userИконка перед текстом; принимает SVG-компонент.
rightIconSvgTypenone · check · search · userИконка после текста; принимает SVG-компонент.
leftIconClassNamestringКласс левой иконки.
rightIconClassNamestringКласс правой иконки.
onClick(event) => voidОбработчик нажатия.
hrefstringРендерит ссылку вместо кнопки.
linkComponentElementTypeКомпонент ссылки, например Next.js Link.
target'_self' | '_blank'_self · _blankГде открыть ссылку._self
type'button' | 'reset' | 'submit'button · reset · submitТип HTML-кнопки.button
classNamestringКласс корневого элемента.
textClassNamestringКласс текстовой части.

Нативные HTML-атрибуты поддерживаются там, где компонент рендерит соответствующий элемент. Параметры className управляют только оформлением.