最近碰到一个需求,需要给树形结构的数组增加禁用状态,下面是我写的一个递归函数
// 递归给树添加disable状态
// list 目标树
// key 需要禁用的树节点的key
function addDisabled(list, key) {
for (let i = 0, len = list.length; i < len; i += 1) {
// list[i].key中的key是树的唯一标识。
if (list[i].id === key) {
list[i].disabled = true;
}
if (list[i].children && list[i].children.length) {
addDisabled(list[i].children, key);
}
}
}