1
這是我的父組件:EventEmitter:無法訪問產值
import {Component, Input} from 'angular2/core';
import {ChildComponent} from '../../components/parent-child-and-child-parent-communication/child';
@Component({
selector: 'parent-component',
template: `<li *ngFor="#position of employees">
{{position.name}}</li>
<child-component name="Accenture"></child-component>
Clicked data {{clicked}}`,
directives:[ChildComponent]
})
export class ParentComponent{
employees;
@Input() clicked;
constructor(){
this.employees = [{
id: 1,
name: "software developer"
},
{
id: 2,
name: "Team Leader"
},
{
id: 3,
name: "Project "
}
]
}
}
這是我的孩子組成:
import {Component, Input, Output, EventEmitter} from 'angular2/core';
@Component({
selector: 'child-component',
template: `office name: {{name}}. <br> chennai office list<br> <li *ngFor="#office of offices" (click)="selectOffice(office)">
{{office.name}}</li>`
})
export class ChildComponent{
selectedOffice;
@Input() name;
@Output() clicked = new EventEmitter()
offices;
officename;
constructor(){
this.offices = [
{
id: 1,
name: "HCL Technology"
},
{
id: 2,
name: "Accenture"
},
{
id: 3,
name: "TCS"
}
]
}
selectOffice(data) {
console.log(data)
this.officename = data;
this.clicked.emit(this.officename)
}
}
我想點擊的辦公室名稱發送到父組件,並顯示它 如何解決這個問題?否則,請解釋如何在單擊事件觸發器的同時將數據從一個組件發送到其他組件。
查看食譜,[家長監聽兒童活動](https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#child-to- parent) –