首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tree-model-js如何获取上一个节点id

问tree-model-js如何获取上一个节点id
EN

Stack Overflow用户
提问于 2017-02-21 15:10:56
回答 2查看 415关注 0票数 0

我想知道树中之前访问过的节点。尝试使用下面的示例

代码语言:javascript
复制
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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-21 15:19:19

在遍历树时,您可以使用node.parent获取当前节点的父节点。

代码语言:javascript
复制
rootMain.walk(node => {
  console.log('node id:', node.model.id);

  if(node.parent) {
    console.log('parent node id:', node.parent.model.id);
  }
});
票数 1
EN

Stack Overflow用户

发布于 2017-02-21 15:47:42

这将记录所需的父id

代码语言:javascript
复制
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;
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42360841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档