根据this answer,我可以为输出定义一个事件发射器。

export class NavComponent {
  @Output() poof: EventEmitter<any> = new EventEmitter();
  onClick():void { this.poof.emit(null); }
}


然后,我可以根据以下内容将事件发送给标记。

<navbar (poof)="catcher.boom()"></navbar>
<compa #catcher></compa>


我尝试使用null提供一个对象而不是this.poof.emit({});并通过catcher.boom(input)更改标记。那没有用,控制台告诉我输入未定义。

如何使用上述设置提供对象?有没有更明智的方法?

最佳答案

您需要使用提供发射值的隐式$event变量

<navbar (poof)="catcher.boom($event)"></navbar>

10-06 11:10