Select
Базовый из options
Язык: —
Размеры
Размеры совпадают с Input
Состояния
Опции слотом
Входные параметры
| Имя | Тип | По умолчанию | Описание |
|---|---|---|---|
options | SelectOption[] | [] | Список вариантов: { value: string | number, label: string, disabled?: boolean }. |
placeholder | string | undefined | Текст заглушки, когда ни один вариант не выбран. |
size | 'sm' | 'md' | 'lg' | undefined | Размер. Если не задан, берётся из C3FormField. |
disabled | boolean | false | Отключает список. |
required | boolean | false | Маркер обязательности. |
error | boolean | false | Признак ошибки. |
name | string | undefined | Имя поля для форм. |
v-model привязывает выбранное значение через defineModel<string | number | undefined>().
Описание
Компонент C3Select — выпадающий список на нативном <select> с кастомным оформлением. Варианты можно задать через проп options или рендерить напрямую через слот.
Используйте options для типовых списков или слот для полностью произвольных <option>.
Дополнительная информация
- Слот по умолчанию — дополнительные
<option>-элементы, рендерятся после опций изoptions. - При заданном
placeholderвверху списка выводится отключённый option-заглушка. - Стрелка-индикатор добавляется иконкой сбоку от select: её размер (16/18/20 px) и отступ справа масштабируются вместе с размером поля, поэтому высота
C3Selectсовпадает сC3Inputдля каждого размера. - При ошибке добавляется класс
c3-select--invalidи атрибутaria-invalid="true". - Компонент интегрируется с
C3FormField: берёт размер и ошибку из контекста и регистрирует геттер значения для валидации.