SOURCE

const treeData = [
    {
        id: 1,
        label: "一级 1",
        children: [
            {
                id: 4,
                label: "二级 1-1",
                children: [
                    {
                        id: 9,
                        label: "三级 1-1-1",
                    },
                    {
                        id: 10,
                        label: "三级 1-1-2",
                    },
                ],
            },
        ],
    },
    {
        id: 2,
        label: "一级 2",
        children: [
            {
                id: 5,
                label: "二级 2-1",
            },
            {
                id: 6,
                label: "二级 2-2",
            },
        ],
    },
    {
        id: 3,
        label: "一级 3",
        children: [
            {
                id: 7,
                label: "二级 3-1",
            },
            {
                id: 8,
                label: "二级 3-2",
            },
        ],
    },
];
let flag = false;
const arrId = [];
const getIdArr = (arr,flag,attr)=>{
    if(flag) return arrId;
    arr.forEach((item)=>{
        if(item[attr])  arrId.push(item[attr])
        if(item.children &&item.children.length > 0 && !flag)  getIdArr(item.children,flag,attr)
        else  flag = true
    })
      return arrId
}
console.log(getIdArr(treeData,flag,'id'))
console 命令行工具 X clear

                    
>
console