Guides
Guides

Async Data

The tree allows to load children asynchronously using getChildren option, and hasChildren field on the node.

Demo

'getChildren' option:

This options receives a function that has a TreeNode parameter, and returns a value or a promise that resolves to the node's children:

(node:TreeNode) => TreeNode[] | Promise<TreeNode[]>

The function will be called whenever a node is expanded, the hasChildren field is true, and the children field is empty.
The result will be loaded into the node's children attribute.

Example:

options = { getChildren: (node:TreeNode) => { return request('/api/children/' + node.id); } } nodes = [ { name: 'asyncRoot', hasChildren: true }, { name: 'root2', children: [ { name: 'leaf', hasChildren: false } ] } ]

Did this page help you?