AngularチュートリアルのgetHeroとgetHeroes関数を基にすると、
typescript
1interface MoreHero {
2 id: number;
3 name: string;
4 age: number
5}
6
7getHero(id: number): Observable<MoreHero> {
8 const url = `${this.heroesUrl}/${id}`;
9 return this.http.get<Hero>(url).pipe(
10 catchError(this.handleError<Hero>(`getHero id=${id}`)),
11 map((hero) => {
12 return {
13 ...hero,
14 age: 17
15 }
16 })
17 );
18}
19
20getHeroes (): Observable<MoreHero[]> {
21 return this.http.get<Hero[]>(this.heroesUrl)
22 .pipe(
23 catchError(this.handleError<Hero[]>('getHeroes', [])),
24 map((hero) => {
25 return hero.map(o => ({...o, age: 17}))
26 })
27 );
28}
という感じです。
rxjs/operators
のmap関数を使います。