//根据字段递归对象数组获取对象
//list:遍历的对象,childKey:子集字段,key:匹配的字段,val:匹配的字段对应的值
export const getObjbyId = (list,childKey,key,val,result=[])=>{
list.forEach(item => {
if(item[key]===val){
result.push(item);
}
if(item[childKey]&&item[childKey].length>0){
getObjbyId(item[childKey],childKey,key,val,result)
}
});
return result;
}
getObjbyId(MODELTREE, "children", "id", item)
//
[
{
id: 3409,
label: "地层",
tag: "e3m",
realLayer: "guchengfanwei",
position: [
120.62823486328125, 31.276580810546875, 1592.906982421875,
],
hpr: [-103.000214, 56.50013],
},
]
通过递归深度遍历对象数组,根据对象属性查询对象信息;