【发布时间】:2019-11-20 19:38:01
【问题描述】:
我有一个第三方 API,它返回如下数据 -
它已使用 HttpClient. 从 Angular 服务调用
const someObject = {
employees:[
{name:"XYZ",age:30},
{name:"ABC",age:28},
]
}
我想将此数据转换为以下结构 姓名、年龄不变,描述将根据姓名和年龄计算
{
name :
age :
description: //calculate based on name and age
},
{
name :
age :
description: //calculate based on name and age
}
上面的结构将输入一些Interface,这最终从我的Angular service返回
如何使用 RxJS 做到这一点?
在我苦苦挣扎的时候,谁能帮帮我
最终,我的 Angular 服务会返回上述结构的数据吗?
编辑:
根据收到的回复,我尝试了以下方法:
return this.http.get<any>(url).pipe(
map(data => data.employees),
map(employees =>{
values.map(employee =>{
console.log('individual value =',employee);
return{
employee,
description:employee.name + "" + employee.age
}
})
})
)
但是当这个 Observable 被订阅时,我得到了 undefined 的价值。
是不是因为第二个地图操作员map(employees 没有返回任何东西?
如何让它返回由 inner map 构造的对象?
【问题讨论】:
-
您是否尝试过使用
pipe然后map运算符创建包含描述以及其他字段的新对象?