需求 : 根据选择的id,需要找到一整条tree,id以及id数据的子集都已被删除(向下查找-----上一篇笔记),此时需要更新页面的数据(向上查找)
//知道最底层的节点的id,查找满足id的整个tree(父节点,祖父节点,祖祖辈节点....)
let parent_id ="133"; //需要删除的id值(点击获取)
let localTree = []; //新tree,满足条件的tree,页面更新的tree
let data = fromJS(teamData); //将data转换为immtable teamData没有排成tree的原始数据
//如果parent_id存在,就执行循环里面的代码,不满足条件时退出
while (parent_id ) {
let newData = data.find(item => { //find为 immtable方法
return parent_id === item.get('id');
});
localTree.unshift(newData.toJS()); //unshift(),在数组前面添加字段
parent_id = newData.getIn(['parent_id']); //给parent_id赋新值
}