Tree
Отображает элементы в виде древовидной структуры
Используется для отображения многоуровневого списка элементов в виде древовидной структуры. Позволяет делать следующее:
- сворачивать и разворачивать узлы дерева;
- изменять значки в узлах дерева;
- обрезать текст по ширине контейнера, в который помещен компонент.
<Tree
Value={
[{id: 1, text: 'группа1', children: []},
{id: 2, text: 'группа2', children: [
{id: 3, text: 'элемент1'},
]},
]}
OpenedItems-var="openedItems"
CurrentItem-var="currentItem"
/>
Свойства
Имя | Описание | Тип | Значение по умолчанию | Возможные значения |
---|---|---|---|---|
Badge | Колич ественная информация в компонентах Menu, Accordion, Link, Text. В качестве значения может использоваться объект с полями: counter (число), position ("post" или "pre"), color (цвет) | any | ||
CSS | Массив строк-классов CSS-стилей компонента | array | ||
ChevronClosedIcon | Псевдоним значка группы элементов в свернутом состоянии | string | ||
ChevronOpenedIcon | Псевдоним значка группы элементов в развернутом состоянии | string | ||
ChildrenField | Поле структуры (являющейся элементом массива, переданного в свойстве Value), которое является массивом и описывает дочерние элементы узла дерева | string | children | |
CombineConfig | Конфигурация всех событий компонента. Служебное свойство для генерации фрагментов кода в визуальном режиме редактора форм. Не рекомендуется указывать значение вручную | object | ||
CurrentItem | Псевдоним свойств InputCurrentItem и OutputCurrentItem | any | ||
Hidden | Признак состояния компонента Скрыт | boolean | False | |
Hint | Всплывающая подсказка над компонентом, чаще используемая для подробного пояснения кратко го текста | any | ||
Id | Идентификатор компонента для навигации к нему на HTML-странице | string | ||
InputCurrentItem | Входной параметр компонента: идентификатор текущего выбранного узла дерева | any | ||
InputOpenedItems | Входной параметр компонента: массив идентификаторов раскрытых узлов | array | ||
ItemAlias | Идентификатор повторяющегося набора данных | string | item | |
ItemHeight | Высота элемента в пикселях | number | 30 | |
ItemIndexVariable | Имя переменной для доступа к набору данных текущей итерации | string | i | |
KeyField | Поле структуры (являющейся элементом массива, переданного в свойстве Value), которое определяет идентификатор узла в дереве | string | id | |
LocalizationDictionary | Имя словаря для локализации любых надписей, используемых в дереве | string | ||
OnClick | Обработчик события нажатия кнопки мыши | undefined | ||
OnKeyDown | Обработчик события KeyDown | undefined | ||
OnKeyUp | Обработчик события KeyUp | undefined | ||
OnMouseDown | Обработчик события MouseDown | undefined | ||
OnMouseEnter | Обработчик события MouseEnter | undefined | ||
OnMouseLeave | Обработчик события MouseLeave | undefined | ||
OnMouseMove | Обработчик события MouseMove | undefined | ||
OnMouseOut | Обработчик события MouseOut | undefined | ||
OnMouseOver | Обработчик события MouseOver | undefined | ||
OnMouseUp | Обработчик события MouseUp | undefined | ||
OnUnmount | Обработчик события Unmount | undefined | ||
OpenedItems | Псевдоним свойств InputOpenedItems и OutputOpenedItems | array | ||
OutputCurrentItem | Выходной параметр компонента: идентификатор текущего выбранного узла дерева | any | ||
OutputOpenedItems | Выходной параметр компонента: массив идентификаторов раскрытых узлов | array | ||
ScrollToItem | Идентификатор элемента, который должен быть отображен на экране в результате автоматической прокрутки. Если элемент является дочерним, раскрываются все его родительские узлы. После прокрутки значение переданной переменной сбрасывается в null. | any | ||
ShowExpandAll | Признак отображения кнопки “Разверн уть все” | boolean | True | |
Slot | Метка для динамического добавления другого компонента по его идентификатору | string | ||
Tooltip | Всплывающая подсказка над компонентом, чаще используемая для пояснения назначения значка | any | ||
TraceId | Идентификатор для отслеживания состояния компонента исходя из хронологической последовательности: создание, отрисовка, обновление, удаление; используется для выполнения фрагмента кода по изменению состояния компонента | string | ||
Value | Массив структур, описывающий структуру дерева, текст и значки в узлах дерева | array | ||
ValueField | Поле структуры (являющейся элементом массива, переданного в свойстве Value), которое определяет текст в узле дерева | string | text | |
Visible | Признак инверсии состояния компонента Скрыт | boolean | True |
Примеры
Данные:
"DATA": [
{ "key": "1", "name": "Санкт-Петербург", "children": [], "icon": "bullet" },
{
"key": "2",
"name": "Москва",
"icon": "delete_item",
"children": [
{
"key": "54",
"name": "Ялта",
"icon": "bullet",
"children": [
{
"key": "55",
"name": "Мыс Фиолент",
"icon": "delete_item"
}
]
}
]
}
]
}
JSX:
<Tree
Value-var="DATA"
KeyField="key"
ValueField="name"
ItemAlias="row"
OpenedItems-var="openedItems"
CurrentItem-var="currentItem"
ChevronClosedIcon="folder"
ChevronOpenedIcon="folderOpen"
LocalizationDictionary="FrontendProject"
>
<Group>
<Group Visible-var="row.children" VerticalAlign="Center">
<Icon Size="Small" Name-var="row.icon" CSS={['px-4']} />
<Text Mode="Medium_16" Value-var="row.name"/>
</Group>
<Group Hidden-var="row.children" VerticalAlign="Center">
<Icon Size="Small" Name="row.icon" CSS={['px-4']} />
<Text Value-var="row.name"/>
</Group>
</Group>
</Tree>