angular - 展平相同类型的对象数组

angular - flatten array of objects of the same type

展平具有此类型接口的对象数组的最简洁方法是什么:

Interface {
 Item: Item,
 SubItems: Array<Item>
}

数组示例:

    myArray = [
{Item: {id: "bla1"}, SubItems: [{id: "bla2"}, {id: "bla3"}, {id: "bla4"}]}, 
{Item: {id: "bla5"}, SubItems: [{id: "bla6"}, {id: "bla7"}, {id: "bla8"}]}
]

最终结果应该是所有这些相同类型对象的单个数组,并按如下方式排序:

first object -> Item -> SubItems
second object -> Item -> SubItems

所以在我的例子中我应该有这个:

flattenedArray = [{id: "bla1"}, {id: "bla2"}, {id: "bla3"}, {id: "bla4"}, ...]
myArray.map(val => [val.Item, ...val.SubItems]).reduce((acc, cur) => [...acc, ...cur])