Patrice Chalin 2bd9946bda example(toh-4,5): getHeroesSlowly() to return getHeroes() (#2152)
* example(dart/toh-4,5): getHeroesSlowly() to return getHeroes()

Have `getHeroesSlowly()` delay and then return the value of
`getHeroes()`. This makes it easier for user’s performing the tutorial
to keep this slower method as they evolve toh-5 into toh-6.

* example(ts/toh-4,5): getHeroesSlowly() to return getHeroes()

Have `getHeroesSlowly()` delay and then return the value of
`getHeroes()`. This makes it easier for user’s performing the tutorial
to keep this slower method as they evolve toh-5 into toh-6.
2016-08-26 14:39:57 -07:00

28 lines
715 B
TypeScript

// #docplaster
// #docregion
// #docregion just-get-heroes
import { Injectable } from '@angular/core';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';
@Injectable()
export class HeroService {
// #docregion get-heroes
getHeroes(): Promise<Hero[]> {
return Promise.resolve(HEROES);
}
// #enddocregion get-heroes, just-get-heroes
// #enddocregion
// See the "Take it slow" appendix
// #docregion get-heroes-slowly
getHeroesSlowly(): Promise<Hero[]> {
return new Promise<Hero[]>(resolve =>
setTimeout(resolve, 2000)) // delay 2 seconds
.then(() => this.getHeroes());
}
// #enddocregion get-heroes-slowly
// #docregion
// #docregion just-get-heroes
}