Angular 如果使用es6存在第二个数组,如何循环响应并连接该数组
我正在使用选择器获取响应,如果存在第二个数组,我希望以以下格式显示Angular 如果使用es6存在第二个数组,如何循环响应并连接该数组,angular,rxjs,ngrx,Angular,Rxjs,Ngrx,我正在使用选择器获取响应,如果存在第二个数组,我希望以以下格式显示 [ { "details": { "name": "john", "point": "20" }, "list": { "number": "30", } }, { "details": { "name": "doe", "point": "25" }, "list": { "numbe
[
{
"details": {
"name": "john",
"point": "20"
},
"list": {
"number": "30",
}
},
{
"details": {
"name": "doe",
"point": "25"
},
"list": {
"number": "30",
}
}
]
这就是我要做的,请提前表示感谢
{
"details": [
{
"name": "john",
"point": "20"
},
{
"name": "doe",
"point": "25"
}
]
}
使用rest操作符解析它,并以所需格式返回数据
this.store.pipe(
select(someselector),
filter(result => !!result),
map(r => {
if (result) {
//concat the array if exist;
return result;
}
}
));
这很简单
让我们考虑一下你的第一个数组是
if (result) {
// concat if arr exist. let say array name is arr.
result = {
details: [...result, ...arr].map(d => {
return {
name: d.details.name,
point: d.details.point,
}
})
}
return result;
}
第二个数组是
let arry1 = [{"details":{"name":"john","point":"20"},"list":{"number":"30",}},{"details":{"name":"doe","point":"25"},"list":{"number":"30",}}];
现在将细节从第一个阵列推送到第二个阵列
let newarr = [];
那么newarr包含
newarr.push(arrlist.map(ob=>{return ob.details}));
希望这对你有帮助
快乐编码
[[{"name":"john","point":"20"},{"name":"doe","point":"25"}]]