В готовых полях счётчик уже встроен — включите проп
counterу CdsTextInput или CdsTextArea. ОтдельныйCdsCounterнужен, когда вы собираете свой контрол.
Вариации
Значение и максимум
Свойство value задаёт текущее число, max — предел. Без max счётчик показывает одно число, с max — дробь. Как только value больше max, текст становится красным.
Появление
Счётчик виден только при active — по умолчанию он скрыт. Появление и скрытие анимируются, анимацию задаёт проп transition.
Слот
Слот default заменяет текст счётчика и получает value, max и готовую строку counter.
Сценарии использования
Лимит символов у поля
Слот details у поля ввода — место для счётчика рядом с сообщениями. Длину значения считайте сами и передавайте в value: когда текст перерастёт лимит, счётчик покраснеет.
API
Пропсы
| Имя | Тип | По умолчанию | Описание |
|---|---|---|---|
active | boolean | undefined | — | Активное состояние |
disabled | boolean | null | undefined | null | Заблокированное состояние |
max | string | number | undefined | — | Максимальное значение |
transition | string | boolean | (TransitionProps & { component?: Component | undefined; }) | { component: Component; } | null | undefined | { component: slide-transition-y } | Анимация перехода |
value | string | number | undefined | 0 | Значение счетчика |
Слоты
| Имя | Тип | Описание |
|---|---|---|
default | CdsCounterSlot | Собственный вид счётчика. В параметрах — готовая строка счётчика, текущее и максимальное количество символов |