Textarea
Компонент для ввода многострочного текста. Поддерживает автоматическое изменение высоты в зависимости от содержимого и предоставляет удобный интерфейс для работы с текстовыми полями.
Режим работы
Компонент поддерживает работу как в неконтролируемом режиме, так и контролируемом. Это стандартное поведение React-компонентов, прочитать про это можно в документации React ↗.
Для использования неконтролируемого режима достаточно просто не передавать value или передавать defaultValue, если
требуется задать значение по умолчанию.
Для контролируемого режима используйте связку свойств value/onChange для задания значения и его изменения.
// Неконтролируемое состояние
<Textarea defaultValue="Текст" />;
// Контролируемое состояние
const [text, setText] = React.useState('Текст');
<Textarea value={text} onChange={(event) => setText(event.target.value)} />;Состояния
disabled
Свойство disabled позволяет пометить компонент, как недоступный для взаимодействия.
Валидация
Свойство status используется для состояния валидации компонента - некорректности заполненного поля (значение "error")
или успешной валидации (значение "valid").
Доступность (a11y)
Компонент обеспечивает базовую доступность, используя нативный элемент <textarea>,
поддерживая все стандартные HTML- и aria-атрибуты.
Для улучшения доступности рекомендуется использовать обёртку FormItem для компонента Input для
поддержки заголовка и описания поля.
Свойства и методы
| Свойство | Описание |
|---|---|
after | ReactNodeДобавляет иконку справа. Рекомендации:
По умолчанию: - |
afterAlign | FieldIconsAlignВертикальное выравнивание иконки справа. По умолчанию: - |
align | AlignTypeПо умолчанию: - |
before | ReactNodeДобавляет иконку слева. Рекомендации:
По умолчанию: - |
beforeAlign | FieldIconsAlignВертикальное выравнивание иконки слева. По умолчанию: - |
defaultValue | stringЗначение по умолчанию. По умолчанию: - |
getRef | Ref<HTMLTextAreaElement>Deprecated: Since 7.9.0. Вместо этого используйте По умолчанию: - |
getRootRef | Ref<HTMLElement>По умолчанию: - |
grow | booleanСвойство управляющее автоматическим изменением высоты компонента. По умолчанию: true |
maxHeight | numberМаксимальная высота поля. По умолчанию: - |
mode | "default" | "plain"Режим отображения.
По умолчанию: - |
onResize | ((el: HTMLTextAreaElement) => void)Обработчик, срабатывающий при изменении размера компонента. По умолчанию: - |
slotProps | { root?: (HTMLAttributes<HTMLElement> & HasRootRef<HTMLElement> & HasDataAttribute); textArea?: (TextareaHTMLAttributes<...> & ... 1 more ... & HasDataAttribute) | undefined; } | undefinedСвойства, которые можно прокинуть внутрь компонента:
По умолчанию: - |
status | "default" | "error" | "valid"Статус отображения поля в форме. По умолчанию: - |