Angular 2如何将事件从孙子发送到父组件?

时间:2016-04-06 19:16:03

标签: events angular

我在 PopupComponent 中有 GridComponent

我想将“RowSelected”自定义事件发送到PopupComponent 之外的组件。

我目前正在将事件从GridComponent发送到PopupComponent并将其转发到外部。这是一个非常痛苦的方法,因为我计划拥有大量的PopupComponents。

还有其他方法可以进行事件转发吗?

1 个答案:

答案 0 :(得分:24)

每当您没有直接的父母→子女关系时,请使用(共享)服务来共享数据和/或发送事件。

在服务内部,使用Subject或Observable来完成此任务。

cookbook有一个如何使用Subject来实现组件之间双向通信的示例。

此SO帖子Delegation: EventEmitter or Observable in Angular2有一个如何使用Observable的示例。