Accordion
Одна открытая секция
Несколько открытых секций
С открытой секцией по умолчанию
Формы, элементы, навигация, наложение и раздел Data.
Кастомный слот content
Аккордеон: Что такое C3 UI?
Входные параметры
| Имя | Тип | По умолчанию | Описание |
|---|---|---|---|
items | AccordionItem[] | [] | Список секций аккордеона. Каждая секция: value? (уникальный ключ), title (заголовок), content? (содержимое по умолчанию), disabled? (отключить секцию). |
multiple | boolean | false | Разрешает открытие нескольких секций одновременно. |
modelValue | Array<string | number> | undefined | Значения открытых секций (управляется через v-model). |
defaultOpen | number[] | [] | Индексы секций, открытых по умолчанию в неконтролируемом режиме. |
События
| Имя | Аргументы | Когда срабатывает |
|---|---|---|
update:modelValue | value: Array<string | number> | После переключения секции — массив открытых значений. |
toggle | value: string | number, open: boolean | При раскрытии/сворачивании секции (не срабатывает для отключённых). |
Описание
Аккордеон выводит вертикальный список сворачиваемых секций. Каждая секция состоит из заголовка-триггера и раскрывающегося содержимого. По умолчанию открыта только одна секция за раз; установите multiple, чтобы разрешить несколько открытых.
Компонент поддерживает как контролируемый режим через v-model (передаёте массив открытых значений), так и неконтролируемый — через defaultOpen. Значение секции берётся из value, а при его отсутствии — из title.
Дополнительная информация
- Слот по умолчанию — scoped-slot с параметрами
item,index,openиtoggleдля полной кастомизации секции. - Слот
content— scoped-slot{ item, index }для переопределения содержимого раскрытой секции. - Триггер — кнопка с атрибутами
aria-expandedиaria-controls, связывающими её с панелью поid. - Отключённые секции не реагируют на клик (переключается сразу уход из функции).
- При
multiple=falseоткрытие новой секции закрывает предыдущую.