27 lines
595 B
TypeScript
Raw Normal View History

2015-12-23 09:42:57 -08:00
// #docplaster
// #docregion
import { Hero } from './hero';
import { HEROES } from './mock-heroes';
2016-04-27 11:28:22 -07:00
import { Injectable } from '@angular/core';
2015-12-23 09:42:57 -08:00
@Injectable()
export class HeroService {
getHeroes() {
return Promise.resolve(HEROES);
}
// See the "Take it slow" appendix
getHeroesSlowly() {
return new Promise<Hero[]>(resolve =>
setTimeout(() => resolve(HEROES), 2000) // 2 seconds
2015-12-23 09:42:57 -08:00
);
}
// #docregion get-hero
getHero(id: number) {
return this.getHeroes()
.then(heroes => heroes.find(hero => hero.id === id));
2015-12-23 09:42:57 -08:00
}
// #enddocregion get-hero
2015-12-23 09:42:57 -08:00
}