useControllableState
Состояние, которое может управляться пропсом value или храниться внутри компонента.
Состояние, которое может управляться пропсом value или храниться внутри компонента.
Использование
'use client';
import { useControllableState } from '@prosazhin/pbcomponents';
function Example() {
const [open, setOpen] = useControllableState({ defaultValue: false });
return <button onClick={() => setOpen(!open)}>{open ? 'Open' : 'Closed'}</button>;
}API хука
Параметры
| Параметр | Тип / варианты | Назначение | По умолчанию |
|---|---|---|---|
value? | T | Внешнее значение для управляемого состояния. Укажите его или defaultValue. | — |
defaultValue? | T | Начальное внутреннее значение. Укажите его или value. | — |
onChange? | (value: T) => void | Вызывается при изменении значения. | — |
Возвращает
| Значение | Тип / варианты | Назначение |
|---|---|---|
[0] value | T | undefined | Текущее значение. undefined возможно, если не переданы value и defaultValue. |
[1] setValue | (value: T) => void | Устанавливает значение или сообщает об изменении через onChange. |