angular - Memanggil metode dari komponen anak jika induk memiliki dua anak dari komponen yang sama
https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#parent-to-view-child
jadi menurut dokumen "resmi", pemanggilan metode dari komponen anak bisa dilakukan di dalam Kelas induk menggunakan:
@ViewChild(CountdownTimerComponent)
private timerComponent: CountdownTimerComponent;
dan melakukan
timerComponent.methodName()
Jadi bagaimana jika komponen induk menggunakan dua CountDownTimerComponent dan hanya ingin memanggil timerComponentNumber1.methodName()?
Dengan asumsi pengembang ingin memanggil metode di dalam ParentClass dan bukan dari template
Jawaban #1
Anda perlu menggunakan @ViewChildren sebagai gantinya
@ViewChildren(CountdownTimerComponent)
private timerComponents: QueryList<CountdownTimerComponent>;
Anda dapat melakukan iterasi atas timerComponents dan memanggil metode yang Anda inginkan; atau melakukan sesuatu seperti ini:
this.timerComponents.toArray()[0].someMethod();
Berikut adalah referensi ke dokumentasinya.
