X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fapp%2Fhero.service.ts;h=649b856d72174286f9b026a9ead013311b8acb42;hb=fd92a662c471619278e561f25a4beb7ef78d0690;hp=9003fe1fb02718907bde31a3bfc4eb3bac35c734;hpb=f18faff7c576b595dd8765f36805aa8176122db7;p=examples%2Fangular-tour-of-heroes diff --git a/src/app/hero.service.ts b/src/app/hero.service.ts index 9003fe1..649b856 100644 --- a/src/app/hero.service.ts +++ b/src/app/hero.service.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { Observable, of } from 'rxjs'; +import { Observable, of, EMPTY } from 'rxjs'; import { Hero } from './hero'; import { HEROES } from './mock-heroes'; import { MessageService } from './message.service'; @@ -18,7 +18,12 @@ export class HeroService { } getHero(id: number): Observable { - this.messageService.add(`HeroService: fetched hero id=${id}`); - return of(HEROES.find(hero => hero.id === id)); + this.messageService.add(`HeroService: requested hero id=${id}`); + const found: Hero | undefined = HEROES.find(hero => hero.id === id); + if (found === undefined) { + return EMPTY; + } else { + return of(found); + } } }