28 lines
		
	
	
		
			701 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			701 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
// #docregion
 | 
						|
import { Component, Input, OnInit } from '@angular/core';
 | 
						|
 | 
						|
import { HeroCacheService }         from './hero-cache.service';
 | 
						|
 | 
						|
// #docregion component
 | 
						|
@Component({
 | 
						|
  selector: 'hero-bio',
 | 
						|
  // #docregion template
 | 
						|
  template: `
 | 
						|
    <h4>{{hero.name}}</h4>
 | 
						|
    <ng-content></ng-content>
 | 
						|
    <textarea cols="25" [(ngModel)]="hero.description"></textarea>`,
 | 
						|
  // #enddocregion template
 | 
						|
  providers: [HeroCacheService]
 | 
						|
})
 | 
						|
 | 
						|
export class HeroBioComponent implements OnInit  {
 | 
						|
  @Input() heroId: number;
 | 
						|
 | 
						|
  constructor(private heroCache: HeroCacheService) { }
 | 
						|
 | 
						|
  ngOnInit() { this.heroCache.fetchCachedHero(this.heroId); }
 | 
						|
 | 
						|
  get hero() { return this.heroCache.hero; }
 | 
						|
}
 | 
						|
// #enddocregion component
 |