Tree
Properties
Property | Type | Default | Description |
---|---|---|---|
items | Array<object> | 표시할 아이템의 배열입니다. | |
labelField | string | 'label' | 아이템의 라벨로 사용할 필드 이름입니다. |
rowCount | number | 0 | 한 번에 표시할 최대 아이템 개수입니다. |
scrollTarget | string|HTMLElement | 외부 스크롤 요소를 지정합니다. 부모 노드만 가능합니다. | |
draggable | boolean | false | 트리 아이템이 드래그 가능한지 여부를 나타냅니다. |
droppable | boolean | false | 트리에 다른 아이템을 드롭할 수 있는지 여부를 나타냅니다. |
hookDragMessage | (data: TreeItemDragEventData) => string | 아이템 드래그 시 표시할 메시지를 반환하는 함수를 정의합니다. | |
childrenField | number | 'children' | 트리 구조에서 아이템의 자식 목록을 포함하는 필드의 이름을 정의합니다. |
autoExpandLevel | number | 0 | items 가 갱신될 때 자동으로 확장될 아이템의 레벨을 지정합니다. 예를 들어, 이 속성의 값이 2인 경우, items 가 갱신될 때 2번째 레벨까지 모든 아이템이 자동으로 확장됩니다. |
allowMultiple | boolean | false | 사용자가 여러 항목을 선택할 수 있는지 여부입니다. |
requireSelection | boolean | false | 적어도 하나의 아이템이 항상 선택되어야 하는 여부입니다. |
valueField | string | 선택된 아이템의 값을 결정하는 필드의 이름입니다. | |
selectedItem | object | 선택된 아이템을 정의합니다. | |
selectedItems | Array<object> | 복수 선택된 아이템을 정의합니다. | |
selectedValue | Array<string> | 선택된 아이템의 valueField 속성 값을 정의합니다. |
Methods
Method | Parameters | Return Value | Description |
---|---|---|---|
scrollToItem | item: object | void | 해당 아이템 위치로 스크롤합니다. 이미 표시된 경우 스크롤되지 않습니다. |
invalidate | void | 표시 목록의 갱신을 요청합니다. | |
flush | void | 대기 중인 표시 목록 갱신을 즉시 실행합니다. | |
getParentNode | node: object | object | 지정된 노드의 부모 노드를 반환합니다. |
getAncestorNodes | node: object | Array<object> | 해당 노드의 조상 노드 목록을 반환합니다. |
getDescendantNodes | node: object | Array<object> | 해당 노드의 후손 노드 목록을 반환합니다. null 이면 전체 노드를 반환합니다. |
getSiblingNodes | node: object | Array<object> | 해당 노드의 형제 노드들을 반환합니다. |
getChildren | node: object | Array<object> | 지정된 노드의 자식 노드 목록을 반환합니다. |
hasChildren | node: object | boolean | 해당 노드에 자식이 있는지 여부를 반환합니다. |
addNode | parent: object, node: object | boolean | 부모 노드에 자식 노드를 추가합니다. 부모 노드가 null 이면 최상위 목록에 추가합니다. |
addNodeAt | parent: object, node: object, index: number | boolean | 부모 노드에 자식 노드를 지정된 인덱스 위치에 추가합니다. |
addNodes | parent: object, nodes: Array<object> | boolean | 부모 노드에 여러 자식 노드를 추가합니다. 부모 노드가 null 이면 최상위 목록에 추가합니다. |
addNodesAt | parent: object, nodes: Array<object>, index: number | boolean | 부모 노드에 여러 자식 노드를 지정된 인덱스 위치에 추가합니다. |
removeNode | node: object | boolean | 부모 노드에서 자식 노드를 삭제합니다. |
contains | node: object | boolean | 해당 노드가 트리에 포함되어 있는지 확인하고, 포함되면 true 를 반환합니다. |
isExpandedNode | node: object | boolean | 해당 노드가 확장되어 있는지 여부를 반환합니다. |
expandNode | node: object | boolean | 지정된 노드를 확장합니다. |
expandAll | void | 트리의 모든 노드를 확장합니다. | |
collapseNode | node: object | boolean | 지정된 노드를 축소합니다. |
collapseAll | void | 트리의 모든 노드를 축소합니다. | |
toggleNode | node: object | void | 주어진 노드의 확장 상태를 확장 또는 축소합니다. |
setExpandedNodes | nodes: Array<object> | void | 확장된 노드 목록을 설정합니다. |
getExpandedNodes | Array<object> | 확장된 노드 목록을 반환합니다. | |
getNodeLevel | node: object | number | 지정된 노드의 레벨을 반환합니다. |
isBranchNode | node: object | boolean | 해당 노드가 자식 노드를 가진 가지 노드인지 확인합니다. |
isLeafNode | node: object | boolean | 주어진 노드가 자식 노드를 가지지 않는 마지막 노드인지 확인합니다. |
find | callback: HierarchyFindFn<object>, prefetchNode?: object, postOrder?: boolean | Array<object> | 트리의 모든 노드를 탐색하여 지정된 함수에서 true 를 반환하는 모든 항목을 반환합니다. |
findOne | callback: HierarchyFindFn<object>, prefetchNode?: object, postOrder?: boolean | object | 트리의 모든 노드를 탐색하여 처음으로 true 를 반환하는 항목을 반환하고 탐색을 중지합니다. |
Events
Event | Type | Description |
---|---|---|
collection-change | (event: ArrayListEvent<T>) => void | 컬렉션 내부의 아이템이 변경되었을 때 발생합니다. (set , add , remove , move , update , reset , refresh ) |
caret-change | (event: CustomEvent<{value: number; oldValue: number}>) => void | 커서 인덱스가 변경되었을 때 발생합니다. |
scroll | (event: CustomEvent<{oldLeft: number; oldTop: number; scrollLeft: number; scrollTop: number; trigger: Event}>) => void | 스크롤이 변경되었을 때 발생합니다. |
item-down | (event: ItemEvent<T>) => void | 아이템에 마우스 다운했을 때 발생합니다. |
item-up | (event: ItemEvent<T>) => void | 아이템에 마우스 업 했을 때 발생합니다. |
item-click | (event: ItemEvent<T>) => void | 아이템에 마우스 클릭 했을 때 발생합니다. |
item-drag-ready | (event: ListItemDragEvent<T>) => void | 드래그 준비가 되었을 때 발생합니다. |
item-drag-start | (event: ListItemDragEvent<T>) => void | 드래그가 시작되었을 때 발생합니다. |
item-drag-move | (event: ListItemDragEvent<T>) => void | 드래그 중 움직임이 감지될 때마다 발생합니다. |
item-drag-over | (event: ListItemDragEvent<T>) => void | 드래그 중인 요소가 특정 영역 위에 이동했을 때 발생합니다. |
item-drag-out | (event: ListItemDragEvent<T>) => void | 드래그 중인 요소가 특정 영역에서 벗어났을 때 발생합니다. |
item-drag-enter | (event: ListItemDragEvent<T>) => void | 드래그 중인 요소가 드랍 가능한 영역에 들어갔을 때 발생합니다. |
item-drag-leave | (event: ListItemDragEvent<T>) => void | 드래그 중인 요소가 드랍 가능 영역에서 밖으로 나갔을 때 발생합니다. |
item-drag-end | (event: ListItemDragEvent<T>) => void | 드래그가 종료되었을 때 발생합니다. |
item-drag-cancel | (event: ListItemDragEvent<T>) => void | 드래그가 취소되었을 때 발생합니다. |
item-drop | (event: ListItemDragEvent<T>) => void | 드래그 중인 요소가 드랍되었을 때 발생합니다. |
selection-changing | (event: SelectionEvent<T>) => void | 아이템이 선택되기 전에 발생합니다. 이벤트 핸들러에서 preventDefault 를 호출하여 선택 작업을 취소할 수 있습니다. |
selection-change | (event: SelectionEvent<T>) => void | 아이템이 선택된 후에 발생합니다. |
node-change | (event: HierarchyListEvent<T>) => void | 컬렉션 내부의 노드 변경 시 발생합니다. (collapsing - 접기 전, collapse - 접은 후, expanding - 확장 전, expand - 확장 후, add - 노드 추가, remove - 노드 삭제, move - 노드 이동) |