首页 > 解决方案 > 过滤树结构直到总项目达到其限制

问题描述

我正在尝试以递归方式过滤像树结构这样的数组,将其限制为要显示的最大项目数。


export interface MyType {
  children: MyType[],
  id: number;
name:string;
}

items: MyType[] = [{
  children: [{ 
     children:[]
     id: 3,
     name: 'three'
   },
   { 
     children:[]
     id: 4,
     name: 'four'
   }
  ],
  id: 1,
  name: 'One'
},
{
  children: [{ 
    children: [],
    id: 5,
    name: 'five'
  }
  ],
  id: 2,
  name: 'two'
}
];

我想创建一个函数来过滤上述数组,使其最多只能有 4 个 MyType 对象。

所以在这种情况下,新数组将是:

[{
  children: [{ 
     children:[]
     id: 3,
     name: 'three'
   },
   { 
     children:[]
     id: 4,
     name: 'four'
   }
  ],
  id: 1,
  name: 'One'
},
{
  children: [],
  id: 2,
  name: 'two'
}
];

标签: typescriptrecursionrecursive-query

解决方案


推荐阅读