projects
/
examples
/
angular-tour-of-heroes
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
WIP: 6: Get Data from a Server i) Heroes and HTTP - Update heroes
[examples/angular-tour-of-heroes]
/
src
/
app
/
heroes
/
heroes.component.ts
diff --git
a/src/app/heroes/heroes.component.ts
b/src/app/heroes/heroes.component.ts
index
a09ff13
..
38ab888
100644
(file)
--- a/
src/app/heroes/heroes.component.ts
+++ b/
src/app/heroes/heroes.component.ts
@@
-1,6
+1,7
@@
import { Component, OnInit } from '@angular/core';
import { Hero } from '../hero';
import { Component, OnInit } from '@angular/core';
import { Hero } from '../hero';
-import { HEROES } from '../mock-heroes';
+import { HeroService } from '../hero.service';
+import { MessageService } from '../message.service';
@Component({
selector: 'app-heroes',
@Component({
selector: 'app-heroes',
@@
-9,17
+10,28
@@
import { HEROES } from '../mock-heroes';
})
export class HeroesComponent implements OnInit {
})
export class HeroesComponent implements OnInit {
- heroes
= HEROES
;
+ heroes
: Hero[]
;
- selectedHero : Hero;
+ constructor(
+ private heroService : HeroService,
+ private messageService : MessageService) { }
-
onSelect(hero : Hero): void
{
- this.
selectedHero = hero
;
+
ngOnInit()
{
+ this.
getHeroes()
;
}
}
- constructor() { }
-
- ngOnInit() {
+ getHeroes() : void {
+ this.heroService
+ .getHeroes()
+ .subscribe(heroes => this.heroes = heroes);
}
}
+ add(name: string): void {
+ name = name.trim();
+ if (!name) { return; }
+ this.heroService.addHero({ name } as Hero)
+ .subscribe(hero => {
+ this.heroes.push(hero);
+ });
+ }
}
}