js 数组[12] el-tree[{name:'张三',id:2,child:[{name:'李四',id:12}]}],根据数组中的数据查出el-tree中的节点
时间: 2024-03-06 10:47:20 浏览: 52
您可以使用递归的方式查找 `el-tree` 中的节点,例如:
```javascript
const treeData = [
{
name: '张三',
id: 2,
child: [
{
name: '李四',
id: 12
}
]
}
];
function findNodeById(id, nodes) {
for (const node of nodes) {
if (node.id === id) {
return node;
}
if (Array.isArray(node.child)) {
const result = findNodeById(id, node.child);
if (result) {
return result;
}
}
}
return null;
}
const id = 12;
const node = findNodeById(id, treeData);
console.log(node);
```
在上述代码中,我们定义了一个 `findNodeById` 函数,它接受一个 `id` 参数和一个 `nodes` 数组参数,用于查找 `id` 对应的节点。函数内部先遍历 `nodes` 数组中的每一个节点,如果当前节点的 `id` 属性等于传入的 `id` 参数,就返回当前节点。如果当前节点的 `child` 属性是数组,就递归调用 `findNodeById` 函数查找子节点中的匹配节点。如果在所有节点中都没有找到匹配的节点,就返回 `null`。最后,我们调用 `findNodeById` 函数查找 `id` 为 `12` 的节点,并将结果输出到控制台上。
阅读全文