ui.tree

Компонент для иерархических данных.

В компоненте Tree может быть любое количество веток, у каждой из которых также может быть сколько угодно веток. Ветки можно разворачивать и сворачивать.

Компонент поддерживает редактирование с помощью встроенных редакторов, драг-н-дроп, чекбоксы с тремя состояниями и т.д. Подробнее читайте в описательной документации tree.

Инициализация

var tree = webix.ui({
    view:"tree",
    select:true,
    data: [
        {
            id:"root", value:"Cars", open:true,
            data:[
                {
                    id:"1", open:true,
                    value:"Toyota", data:[
                        { id:"1.1", value:"Avalon" },
                        { id:"1.2", value:"Corolla" },
                        { id:"1.3", value:"Camry" }
                    ]
                },
                {
                    id:"2", value:"Skoda", open:true,
                    data:[
                        { id:"2.1", value:"Octavia" },
                        { id:"2.2", value:"Superb" }
                    ]
                }
            ]
        }
    ]
});

С чего начать

Methods
add добавляет элемент в DataStore
addCss применяет CSS-класс к элементу компонента
adjust подстраивает размеры компонента под размеры HTML-контейнера
attachEvent задает обработчик внутреннего события компонента
bind связывает данные компонентов
blockEvent временно блокирует вызов ВСЕХ событий вызывающего объекта
callEvent вызывает внутреннее событие компонента
checkAll проверяет элементы в дереве
checkItem "чекает" чекбокс в элементе дерева
clearAll удаляет все элементы из компонента
clearCss удалить CSS-класс у всех элементов
clearValidation удаляет из компонента все примененные после валидации стили и маркеры
close закрывает ветку с указанным id
closeAll закрывает все ветки в дереве
copy делает копию элемента
count возвращает количество элементов, отображаемых в компоненте на момент вызова
customize переопределяет свойство "type"
define переопределяет одну или несколько настроек компонента
destructor разрушает компонент
detachEvent удаляет обработчик события (который был задан ранее методом attachEvent)
disable блокирует компонент (он становится серым, клики по нему не срабатывают)
enable делает активным ранее заблокированный компонент
exists проверяет, существует ли элемент с указанным ID
filter фильтрует данные в компоненте
find возвращает все элементы данных, соответствующие заданному критерию, или только первый из элементов
getBranchIndex получает индекс элемента в ветке
getChecked возвращает id чекнутых элементов
getChildViews возвращает внутренние компоненты
getFirstChildId получает ID первого дочернего элемента указанной ветки
getFirstId возвращает ID первого элемента
getFormView возвращает объект формы, которой принадлежит компонент
getIdByIndex возвращает id элемента по указанному индексу
getIndexById возвращает индекс элемента по заданному ID
getItem возвращает объект элемента данных по заданному ID
getItemNode возвращает HTML-контейнер элемента данных компонента
getLastId возвращает ID последнего элемента
getNextId возвращает ID элемента, расположенного после указанного элемента на заданной относительной позиции
getNextSiblingId возвращает ID следующего элемента указанного узла
getNode возвращает HTML-элемент компонента
getOpenItems возвращает id открытых веток
getParentId получает ID родительского элемента
getParentView возвращает родительский компонент
getPrevId возвращает ID элемента, расположенного до указанного элемента на заданной относительной позиции
getPrevSiblingId возвращает id предыдущего элемента
getScrollState возвращает позицию скролла
getSelectedId возвращает id выбранного элемента(ов)
getSelectedItem возвращает выбранный элемент данных
getState возвращает текущее состояние компонента
getTopParentView возвращает самого верхнего родителя
group группирует данные по указанному полю
hasCss проверяет есть ли у элемента указанный CSS-класс
hasEvent проверяет, есть ли у компонента обработчики указанного события
hide скрывает компонент
isBranch проверяет, есть ли у элемента дочерние элементы
isBranchOpen проверяет, открыта или закрыта указанная ветка
isChecked проверяет, чекнут ли указанный элемент
isEnabled проверяет, активен или заблокирован компонент
isSelected проверяет, выбран указанный элемент или нет
isVisible проверяет, виден ли компонент
load загружает данные из внешнего источника данных
loadBranch загружает данные в указанную ветку
loadNext отправляет запрос на загрузку определённого количества строк данных (до конца имеющихся данных или до определённой позиции)
locate получает id элемента по связанному с ним HTML событию
mapEvent направляет события от одного компонента к другому
move перемещает выбранный элемент на новую позицию
moveBottom перемещает указанный элемент на последнюю позицию
moveDown перемещает элемент вниз в пределах его текущей ветви
moveSelection перемещает выделение в указанном направлении
moveTop перемещает указанный элемент на первую позицию
moveUp перемещает элемент вверх в пределах его текущей ветви
open открывает ветку с указанным id
openAll открывает все ветки в дереве
parse загружает данные, доступные на клиенте
queryView возвращает внутренние компоненты, которые удовлетворяют указанному условию
refresh перерисовывает компонент или один из его элементов
remove удаляет указанный элемент(ы) из DataStore
removeCss удаляет CSS-класс у элемента компонента
render отрисовывает указанный элемент или весь компонент
resize перерисовывает компонент после изменения размеров
scrollTo прокручивает содержимое компонента до определенной позиции
select выбирает указанный элемент(ы)
selectAll выбирает все элементы или элементы из указанного диапазона id
serialize сериализует данные в массив JSON объектов
setState восстанавливает указанное состояние компонента
show делает компонент видимым
showItem прокручивает содержимое компонента до нужного элемента
sort сортирует DataStore
sync позволяет синхронизировать данные (все или часть) двух компонентов или DataCollection
unbind отменяет связывание компонентов
unblockEvent отменяет блокировку событий, которая была вызвана командой 'blockEvent'
uncheckAll снимает чек со всех элементов в дереве
uncheckItem снимает чек с чекбокса в элементе дерева
ungroup разгруппировывает данные
unselect убирает выделение с указанного элемента
unselectAll убирает выделение со всех элементов
updateItem обновляет элемент данных (изменяет его поля)
validate проверяет один элемент или все данные
waitSave позволяет определить момент, когда операции над данными были сохранены на сервер
Events
onAfterAdd срабатывает после добавления элемента в DataStore
onAfterClose срабатывает после закрытия ветки
onAfterContextMenu срабатывает после вызова контекстного меню
onAfterDelete срабатывает после удаления элемента
onAfterDrop срабатывает после того, как элемент перетащили на цель
onAfterLoad срабатывает после завершения загрузки данных
onAfterOpen срабатывает после открытия ветки
onAfterRender происходит сразу после рендеринга компонента
onAfterScroll срабатывает после прокрутки содержимого компонента webix
onAfterSelect срабатывает после выбора элемента
onAfterSort срабатывает после сортировки данных
onBeforeAdd срабатывает перед добавлением элемента в DataStore
onBeforeClose срабатывает перед закрытием ветки дерева
onBeforeContextMenu срабатывает перед вызовом контекстного меню
onBeforeDelete срабатывает перед удалением элемента
onBeforeDrag срабатывает перед тем, как курсор переместили на элемент и нажали левую кнопку мыши
onBeforeDragIn срабатывает перед тем, как элемент будет перемещён в зону над целью перетаскивания
onBeforeDrop срабатывает перед тем, как элемент помещён на цель перетаскивания
onBeforeDropOut срабатывает перед тем, как элемент перемещен на цель вне компонента, в котором элемент находился
onBeforeLoad запускается непосредственно перед началом загрузки данных
onBeforeOpen срабатывает перед открытием ветки дерева
onBeforeRender происходит перед рендерингом компонента
onBeforeSelect срабатывает перед выбором элемента
onBeforeSort срабатывает перед сортировкой данных
onBindRequest срабатывает, когда компонент готов получить данные из главного компонента
onBlur срабатывает при смещении фокуса за пределы компонента
onDataRequest срабатывает, когда данные с сервера запрашиваются для линейных данных (List, DataTable, DataView и т.д.) для динамической загрузки данных
onDataUpdate срабатывает при обновлении элемента данных
onDestruct происходит, когда компонент был разрушен деструктором
onDragOut срабатывает, когда элемент перемещён за пределы цели перетаскивания
onEnter срабатывает после нажатия клавиши Enter
onFocus срабатывает после смещения фокуса на компонент
onItemCheck вызывается после клика по чекбоксу внутри элемента дерева
onItemClick срабатывает после клика по элементу компонента
onItemDblClick срабатывает после двойного клика по элементу компонента
onItemRender срабатывает при перерисовке элементов с заданным пользователем темплейтом
onItemSingleClick позволяет различать события одиночного и двойного клика
onKeyPress срабатывает после того, как пользователь нажал клавишу (для компонента, на котором сейчас фокус)
onLoadError срабатывает при возникновении ошибки во время загрузки данных (невалидный ответ с сервера)
onLongTouch срабатывает после того, как пользователь на достаточно долгое время задержит палец на экране (для устройств с сенсорным экраном)
onMouseMove срабатывает при наведении мыши на указанный компонент
onMouseMoving срабатывает при наведении указателя мыши на компонент
onMouseOut срабатывает, когда курсор мыши убирается с указанного элемента
onPartialRender вызывается, когда часть дерева перерисовывается
onPaste срабатывает, когда включён clipboard и пользователь нажимает сочетание клавиш CTRL+V
onSelectChange срабатывает после изменения выбора
onSwipeX срабатывает по горизонтальному свайпу
onSwipeY срабатывает по вертикальному свайпу
onTabFocus срабатывает после смещения фокуса на другой компонент с помощью клавиши Tab
onTimedKeyPress срабатывает через некоторое время после нажатия клавиши в текстовом поле
onTouchEnd срабатывает после завершения события touch
onTouchMove срабатывает по время движения пальца по сенсорному экрану
onTouchStart срабатывает после touch-события в компоненте webix
onValidationError срабатывает, если данные не прошли валидацию после их загрузки/редактирования/добавления
onValidationSuccess срабатывает, если данные успешно прошли прошли валидацию после их загрузки/редактирования/добавления
onViewResize срабатывает после того, как пользователь изменил размер компонента с помощью компонента resizer
onViewShow срабатывает, когда компонент появляется (вызов метода show())
Properties
animate определяет анимацию для показа компонента в Multiview
borderless скрывает или показывает границы компонента
click задает обработчик для кликов по кнопке
clipboard включить / выключить поддержку буфера обмена на десктопных устройствах
container HTML-контейнер (или его ID), внутри которого компонент должен быть инициализирован
css имя CSS-класса, который будет присвоен HTML-элементу компонента, или объект со стилями
data данные для компонента (массив, типизированный массив, XML или CSV)
datathrottle устанавливает промежуток времени между запросами данных (период времени между завершением одного запроса и началом следующего запроса)
datatype тип загружаемых данных
delimiter устанавливает разделители CSV для операций с буфером обмена
disabled блокирует или разблокирует компонент
drag включает или отключает драг-н-дроп для компонента
dragscroll включает автоматическую прокрутку компонента во время перетаскивания его элементов
filterMode определяет паттерн для фильтрации элементов дерева
gravity задает удельный (относительный) размер компонента
height задает высоту компонента
hidden скрывает компонент после его инициализации
id ID компонента
item алиас свойства type
keyPressTimeout задержка между нажатием клавиши и обработчиком
maxHeight задает максимальную высоту компонента
maxWidth задает максимальную ширину компонента
minHeight задает минимальную высоту компонента
minWidth задает минимальную ширину компонента
mouseEventDelay задержка между реальным действием мыши и вызовом связанных событий
multiselect включает режим выбора нескольких элементов
navigation активирует навигацию с помощью клавиатуры
on позволяет присоединять обработчики к внутренним событиям компонента
onClick присоединяет обработчик клика для частей компонента с указанным классом CSS
onContext свойство, используемое для определения пользовательских обработчиков контекстного клика (клика правой кнопкой мыши) для элементов в ячейках DataTable
onDblClick обрабатывает двойные клики по областям и элементам компонентов (по названию их CSS-классов)
onMouseMove обрабатывает событие mousemove для элементов компонента с указанным классом CSS
prerender вызывает отрисовку всех элементов данных
ready обработчик, который вызывается сразу после того, как компонент полностью инициализирован
removeMissed определяет что должно происходить с элементами данных при перезагрузке
rules задает правила для валидации
save определяет URL для сохранения данных
scheme определяет схему для обработки данных
scroll включает/отключает полосу прокрутки
scrollSpeed время, в течение которого компонент прокручивается до указанной позиции (в миллисекундах)
select включает/отключает выбор одного или нескольких элементов в компонентах
template темплейт, который определяет вид и содержимое элементов компонента
templateCopy задаёт template, в соответствии с которым данные копируются в буфер обмена
threeState включает чекбоксы с тремя состояниями
tooltip задает тултип, который появится при наведении курсора на элемент
type объект с настройками отображения элементов
url путь к данным, которые загрузятся в компонент сразу после инициализации
width задает ширину компонента
Other
$drag метод вызывается, когда когда пользователь начинает перетаскивать элемент
$dragHTML определяет вид перетягиваемого элемента
$dragIn метод вызывается, когда перетаскиваемый элемент попал в зону над возможной целью перетаскивания
$dragMark вызывается во время драг-н-дроп и помечает один из элементов компонента как активную цель перетаскивания
$dragOut метод вызывается, когда перетаскиваемый элемент покидает зону над возможной целью перетаскивания
$drop метод вызывается, когда элемент перемещён на подходящую цель
$dropAllow переопределяет правила перетаскивания элемента на цель
$dropHTML определяет вид цели перетаскивания перед тем, как пользователь перетащит на нее элемент
$fixEditor корректирует позиционирование встроенного фильтра в элементах Tree
$getSize возвращает текущий размер компонентов
$height текущая высота компонента
$scope область имен для событий и методов
$setNode определяет HTML-элемент компонента
$setSize задает размеры компонента
$skin вызывается после применения скина
$tooltipIn показывает тултип
$tooltipMove определяет поведение тултипа в момент, когда курсор перемещается над компонентом или HTML-областью
$tooltipOut определяет поведение тултипа в момент, когда курсор выходит за пределы компонента или HTML-области
$view возвращает HTML-элемент компонента
$width текущая ширина компонента
config все настройки, заданные при инициализации компонента
data DataStore компонента
name возвращает имя компонента (свойство только для чтения)
on_click переопределяет обработку кликов по элементам компонента
on_context свойство, используемое для определения пользовательских обработчиков клика правой кнопкой мыши для элементов в компонентах
on_dblclick определяет обработчики для двойных кликов по элементам компонентов (по названию их CSS-класса)
on_mouse_move добавляет обработчик для события mousemove над элементами компонентов (по названию их CSS-класса)
type набор свойств и хелперов для рендеринга элементов
types набор предопределенных типов
waitData конечный результат загрузки данных в компонент (промис)
Наверх