Ich habe versucht, diese Antwort zu folgen, aber es ist zu verwirrend Angular 2 event catching between sibling componentsKommunizieren zwischen Geschwister Komponenten Anguar 2
ich eine Methode in Kind Komponente 1 nennen wollen, wenn etwas auf Kind Komponente 2
geklickt wirdDie untergeordnete Komponente 2 gibt ein Ereignis namens trackClick aus.
Geordnete Komponente:
<div>
<audio-player></audio-player>
<audio-albums></audio-albums>
</div>
Child Komponente 1 (Audio-Player)
// Don't know what to do here, want to call this function
trackChanged(track){
console.log("YES!! " + track);
}
Child Komponente 2 (Audio-Alben)
<li class="track" (click)="playTrack(track)"> </li>
@Output() trackClick = new EventEmitter<any>();
playTrack(track):void{
console.log("calling playTrack from child 2:" + track);
this.trackClick.next([track]);
}
ok Ich habe Angst, es wäre müssen child2-> Eltern-> child1 dank krank versuchen –