コードを見てください。
import {Component} from 'angular2/core';
import {App} from 'client/project/project.app';
import {ProjectService} from 'service/project.service';
@Component({
selector: 'project-info',
templateUrl: 'client/project/info/project-info.html'
})
export class ProjectInfoComponent {
project:IProject;
constructor(
private app: App,
private projectService: ProjectService
){
this.project = this.app.selectedProject;
}
}
他のコンポーネントで this.app.selectedProject={...} を変更したので、このコンポーネントを再レンダリングしたいと思います。どうやってするの?EventEmitter を使用する場合にのみ発明されます。
this.app.selectedProject.subscribe(project => {
this.project = project;
});