40 lines
		
	
	
		
			944 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			944 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | // #docregion
 | ||
|  | // #docregion imports
 | ||
|  | import {Component}         from 'angular2/core'; | ||
|  | import {CarComponent}      from './car/car.component'; | ||
|  | import {HeroesComponent}   from './heroes/heroes.component.1'; | ||
|  | 
 | ||
|  | import {provide, Inject}   from 'angular2/core'; | ||
|  | import {Config, CONFIG}    from './app.config'; | ||
|  | import {Logger}            from './logger.service'; | ||
|  | // #enddocregion imports
 | ||
|  | 
 | ||
|  | @Component({ | ||
|  |   selector: 'my-app', | ||
|  |   template: `
 | ||
|  |     <h1>{{title}}</h1> | ||
|  |     <my-car></my-car> | ||
|  |     <my-heroes></my-heroes> | ||
|  |   `,
 | ||
|  |   directives:[CarComponent, HeroesComponent], | ||
|  | // #docregion providers
 | ||
|  |   providers: [ | ||
|  |     Logger, | ||
|  |    // #docregion provider-config
 | ||
|  |     provide('app.config', {useValue: CONFIG}) | ||
|  |    // #enddocregion provider-config
 | ||
|  |   ] | ||
|  | // #docregion providers
 | ||
|  | }) | ||
|  | export class AppComponent { | ||
|  |   title:string; | ||
|  | 
 | ||
|  |   // #docregion ctor
 | ||
|  |   constructor(@Inject('app.config') config:Config) { | ||
|  | 
 | ||
|  |     this.title = config.title; | ||
|  |   } | ||
|  |   // #docregion ctor
 | ||
|  | } | ||
|  | // #enddocregion
 |