我正在使用fancytree(https://github.com/mar10/fancytree(,我有这个树结构:
root
|_ child1
|_ subchild1
|_ subchild2
|_ subchild3
|_ subchild4
如果所选节点是child1
,则可以使用window.tree.activeNode.children
或window.tree.activeNode.getChildren()
获得第一个孩子,但这仅返回[subchild1, subchild2]
。无论如何都有所有孩子?
返回的方法: [subchild1, subchild2, subchild3, subchild4]
?
您可以使用visit
函数生成平面列表:
var activeNode = tree.getActiveNode(),
nodes = [];
activeNode.visit(function(node) {
nodes.push(node); // or node.key, ...
});
(请注意,还有node.toDict()
的方法可以生成嵌套对象。(