Skip to content

SList

Обзор

Список: статический, дерево, виртуализация и infinite scroll.

Usage

Плоский список с виртуализацией.

API

Краткий справочник props, slots и events — см. API Reference.

Guide

SList отображает коллекцию строк и поддерживает несколько режимов: плоский список, дерево, виртуализацию длинных списков и подгрузку при скролле. Строки оформляйте через SListItem.

Дерево

Иерархический список с expand/collapse.

Виртуальный скролл

Подгрузка при скролле

Декларативные элементы

API Reference

Свойства

ИмяТипОписаниеПо умолчанию
itemsTItem[]Плоский или древовидный набор элементов.
itemKeyTListItemKeyResolver<TItem>Ключ строки для v-for и выбора.'id'
childrenKeykeyof TItem & stringПоле с дочерними элементами для дерева.'children'
titleKeykeyof TItem & stringПоле заголовка строки.'title'
subtitleKeykeyof TItem & stringПоле подзаголовка строки.'subtitle'
iconLeftKeykeyof TItem & stringПоле имени иконки слева.'iconLeft'
disabledKeykeyof TItem & stringПоле флага disabled.'disabled'
itemProps(…) => …Дополнительные пропсы для SListItem по элементу.
selectionModeESelectionModeРежим выбора строк.'none'
mandatorybooleanЗапрещает снятие выбора в single-режиме.false
virtualbooleanВиртуальный скролл для длинных списков.
gapESListGapВертикальный промежуток между строками.DEFAULT_LIST_GAP
estimateItemSizenumberОценка высоты строки для виртуализации.36
overscannumberЧисло строк вне viewport, рендеримых заранее.5
endReachedDistancenumberРасстояние до низа списка для события end-reached.0
canLoadMore(…) => …Предикат: можно ли запрашивать следующую порцию данных.
heightnumber | stringВысота контейнера списка.320
maxHeightnumber | stringМаксимальная высота скролла при height: auto.
revealRightbooleanПоказывать правую колонку действий при наведении.false
expandOnClickbooleanКлик по строке с потомками сворачивает/разворачивает ветку.false
hasMoreChildrenKeykeyof TItem & stringПоле-флаг «у раскрытого узла есть ещё дети для догрузки»; включает синтетическую строку «Показать ещё».
loadingMoreChildrenKeysTItem[]Ключи узлов, для которых сейчас идёт догрузка детей (в их строке «Показать ещё» — спиннер).[]
modelValue / v-model:expandedstring[]Двустороннее значение для v-model:expanded.[]
modelValue / v-modelstring | undefinedДвустороннее значение компонента (v-model).
modelValue / v-model:selectedstring | string[] | undefinedДвустороннее значение для v-model:selected.

События

ИмяОписаниеPayload
endReachedДостигнут конец списка при прокрутке или виртуализации.{ direction: 'bottom' }
loadMoreChildrenЗапрос догрузки детей конкретного узла из строки «Показать ещё».{ key: string; item: TItem }

Слоты

ИмяОписание
loadMoreСтрока «Показать ещё» для догрузки детей узла
itemКастомная строка; scope — данные строки и toggleExpanded
defaultПроизвольные SListItem без prop items