64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			64 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | // #docplaster
 | ||
|  | // #docregion on-init
 | ||
|  | import {OnInit} from 'angular2/core'; | ||
|  | 
 | ||
|  | // #enddocregion on-init
 | ||
|  | import {Component} from 'angular2/core'; | ||
|  | import {Hero} from './hero'; | ||
|  | import {HeroDetailComponent} from './hero-detail.component'; | ||
|  | // #docregion hero-service-import
 | ||
|  | import {HeroService} from './hero.service.1'; | ||
|  | // #enddocregion hero-service-import
 | ||
|  | 
 | ||
|  | // Testable but never shown
 | ||
|  | @Component({ | ||
|  |   selector: 'my-app', | ||
|  |   template: `
 | ||
|  |   <div *ngFor="#hero of heroes" (click)="onSelect(hero)"> | ||
|  |     {{hero.name}} | ||
|  |   </div> | ||
|  |   <my-hero-detail [hero]="selectedHero"></my-hero-detail> | ||
|  |   `,
 | ||
|  |   directives: [HeroDetailComponent], | ||
|  |   // #docregion providers
 | ||
|  |   providers: [HeroService] | ||
|  |   // #enddocregion providers
 | ||
|  | }) | ||
|  | // #docregion on-init
 | ||
|  | export class AppComponent implements OnInit { | ||
|  |   // #enddocregion on-init
 | ||
|  |   public title = 'Tour of Heroes'; | ||
|  |   // #docregion heroes-prop
 | ||
|  |   public heroes: Hero[]; | ||
|  |   // #enddocregion heroes-prop
 | ||
|  |   public selectedHero: Hero; | ||
|  | 
 | ||
|  |   // #docregion new-service
 | ||
|  |   heroService = new HeroService(); // don't do this
 | ||
|  |   // #enddocregion new-service
 | ||
|  |   // #docregion ctor
 | ||
|  |   constructor(private _heroService: HeroService) { } | ||
|  |   // #enddocregion ctor
 | ||
|  |   // #docregion getHeroes
 | ||
|  |   getHeroes() { | ||
|  |     //#docregion get-heroes
 | ||
|  |     this.heroes = this._heroService.getHeroes(); | ||
|  |     // #enddocregion get-heroes
 | ||
|  |   } | ||
|  |   // #enddocregion getHeroes
 | ||
|  | 
 | ||
|  |   // #docregion ng-on-init
 | ||
|  |   // #docregion on-init
 | ||
|  |   ngOnInit() { | ||
|  |     // #enddocregion on-init
 | ||
|  |     this.getHeroes(); | ||
|  |     // #docregion on-init
 | ||
|  |   } | ||
|  |   // #enddocregion on-init
 | ||
|  |   // #enddocregion ng-on-init
 | ||
|  | 
 | ||
|  |   onSelect(hero: Hero) { this.selectedHero = hero; } | ||
|  |   // #docregion on-init
 | ||
|  | } | ||
|  | // #enddocregion on-init
 |