我想知道树中之前访问过的节点。尝试使用下面的示例
var TreeModel = require('tree-model');
tree = new TreeModel();
rootMain = tree.parse({
id: 1,
children: [
{
id: "11",
children: [{id: "111"}]
},
{
id: "12",
children: [{id: "121"}, {id: "122"}]
},
{
id: "13"
}
]
});如果我遍历到节点121和122,我想要父节点,那么它应该返回给我12如果假设我遍历到节点111,我想要父节点,那么它应该返回11如果我遍历到节点13,我想要父节点,那么它应该返回1
发布于 2017-02-21 15:19:19
在遍历树时,您可以使用node.parent获取当前节点的父节点。
rootMain.walk(node => {
console.log('node id:', node.model.id);
if(node.parent) {
console.log('parent node id:', node.parent.model.id);
}
});发布于 2017-02-21 15:47:42
这将记录所需的父id
var parent_id;
rootMain.walk(function (node) {
var current_id = node.model.id;
if (node.model.id === 121)
console.log(parent_id);
return true;
parent_id = current_id;
});https://stackoverflow.com/questions/42360841
复制相似问题