I have a service which uses @angular/http to load data from an API.
I want to create a projection of the retrieved data for my Components using this data.
Therefore I wrote the following code:
getById(id: string) {
return this.http
.get(`https://my-api.io/${id}`)
.map(response => response.json())
.map(contracts =>
contracts.map(contract => # <- Nested map
new Contract(
contract['id'],
contract['description']
)
)
);
}
In the 6th line I have a nested map-Statement reducing the readability of my code.
Question
Can I do better? Is there an operator in RxJS which I can use instead of creating this kind of nesting?
Thanks in advance!
mapis ofObservableand the inside is ofArraytype. You can consider separate it out to a function for readability though.contractswithconcatAllthen you can apply.mapfor eachcontract, andcombineAllObservable sequence. Note: you need return Observable, from.map, in order to usecombineAll- jsbin.com/hududiq/edit?js,console