50 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			50 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 
								 | 
							
								// #docplaster
							 | 
						||
| 
								 | 
							
								// #docregion
							 | 
						||
| 
								 | 
							
								import { Component, OnInit } from 'angular2/core';
							 | 
						||
| 
								 | 
							
								import { Router } from 'angular2/router';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import { Hero } from './hero';
							 | 
						||
| 
								 | 
							
								import { HeroDetailComponent } from './hero-detail.component';
							 | 
						||
| 
								 | 
							
								import { HeroService } from './hero.service';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// #docregion metadata
							 | 
						||
| 
								 | 
							
								// #docregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								@Component({
							 | 
						||
| 
								 | 
							
								  selector: 'my-heroes',
							 | 
						||
| 
								 | 
							
								// #enddocregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								  templateUrl: 'app/heroes.component.html',
							 | 
						||
| 
								 | 
							
								  styleUrls:  ['app/heroes.component.css'],
							 | 
						||
| 
								 | 
							
								  directives: [HeroDetailComponent]
							 | 
						||
| 
								 | 
							
								// #docregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								})
							 | 
						||
| 
								 | 
							
								// #enddocregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								// #enddocregion metadata
							 | 
						||
| 
								 | 
							
								// #docregion class
							 | 
						||
| 
								 | 
							
								// #docregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								export class HeroesComponent implements OnInit {
							 | 
						||
| 
								 | 
							
								// #enddocregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								  heroes: Hero[];
							 | 
						||
| 
								 | 
							
								  selectedHero: Hero;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  constructor(
							 | 
						||
| 
								 | 
							
								    private _router: Router,
							 | 
						||
| 
								 | 
							
								    private _heroService: HeroService) { }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  getHeroes() {
							 | 
						||
| 
								 | 
							
								    this._heroService.getHeroes().then(heroes => this.heroes = heroes);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  ngOnInit() {
							 | 
						||
| 
								 | 
							
								    this.getHeroes();
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  onSelect(hero: Hero) { this.selectedHero = hero; }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  gotoDetail() {
							 | 
						||
| 
								 | 
							
								    this._router.navigate(['HeroDetail', { id: this.selectedHero.id }]);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								// #docregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								// #enddocregion heroes-component-renaming
							 | 
						||
| 
								 | 
							
								// #enddocregion class
							 | 
						||
| 
								 | 
							
								// #enddocregion
							 |