调用兄弟方法抛出“无法读取未定义的 属性 'X'”

Calling a sibling method throws 'Cannot read property 'X' of undefined'

我对 Angular 和 Angular 中的事件非常陌生。

我的父模板:

    <child1 (myEvent)="child2.testMethod()"></child1>
    <child2 #child2 *ngIf="show"></child2>

我收到“无法读取未定义的 属性 'testMothod'”错误,但是当删除 child2 组件中的 *ngIf 时会调用 'testMethod' 方法。

演示:https://stackblitz.com/edit/angular-1c8hfj

这是一个已知 angular 问题 https://github.com/angular/angular/issues/6179

@ViewChild('child2') child2; 添加到 AppComponent 即可解决。