在我的react状态下,数据进入两个不同的数组,我希望我的组件为put both arrays data in a single array
。这是我为这两个数组使用的数据格式:
data: {
array1: [
{
name: "John Doe"
},
{
name: "Bob Williams"
}
]
array2: [
{
name: "Clark Kent"
},
{
name: "Bruce Wayne"
}
]
}
我如何让我的代码返回数据,使最终结果看起来像下面定义的:
_.map(Object.values(this.state.data), (item,key) => {
return _.map(item, (data) => {
return {
name: data.name
}
})
})
所需输出:
data: [
{ name: "John Doe" },
{ name: "Bob Williams" },
{ name: "Clark Kent" },
{ name: "Bruce Wayne" }
]
您可以使用Spread operator ...
将2个数组合并为一个。
const data = {array1:[{name:"John Doe"},{name:"Bob Williams"}],array2:[{name:"Clark Kent"},{name:"Bruce Wayne"}]};;
const result = {data: [...data.array1, ...data.array2]};
console.log(result);
使用Array.prototype.flat((
const data = Object.values(this.state.data).flat();
Object.values(this.state.data).reduce((p, c) => p.concat(c), []);