次の子コンポーネントクラスで試しました
@Component({
selector: 'child',
templateUrl: './child.component.html'
})
export class Child implements OnInit {
@Output() send: EventEmitter<string>;
public constructor(){}
public ngOnInit() {
send = new EventEmitter<string>();
}
public onEventXYZ() {
this.send.emit('hello');
}
}
親テンプレートでは、上記のコンポーネントを次のように参照しています
<child (send)="handleSend($event)"></child>
このエラーが発生しました:Cannot read property 'subscribe' of undefined...
ページの読み込み時。後で、友人の提案で、EventEmitter の初期化を ngOnInit からコンストラクターに移動したとき、すべてが正常に機能しました。
では、 ngOnInit 内でコンポーネント変数を初期化するには遅すぎますか?