Angular 2在嵌套组件中引发事件

时间:2016-11-15 10:31:13

标签: events angular

这是一个有点主观的问题,但我想收集一些意见,以检查我的想法是否正确。

从嵌套组件引发事件时,MessageBus方法在什么时候比冒泡事件更可取?

采用以下示例,用户可以选择从网格中删除卡片:

card layout example with 4 cards, all have X buttons for deletion

如果我们将其布局为:

grid.component    
├── card.component
│   ├── image.component
│   ├── text.component
│   ├── closebutton.component

如果我想在网格组件中处理关闭按钮的单击事件,我需要将事件从关闭通过卡,然后到网格(请注意:这不是一个非常复杂的例子)这个,但我希望它很容易遵循。)

或者,我可以将一些类似MessageBus的东西实现为我的组件的单例/提供者,这可以引发和监听消息。我可以从" X"按钮并在树顶听它。这意味着我不必担心将事件链接在一起,并保持布局更清晰。

这里每种方法的优缺点是什么?

编辑:我看到基于"基于意见的"题;但我想在这里直接回答每种方法的优缺点,而不是建议首选方案。谢谢!

编辑2:与我自己的感受(以及评论中表达的感受)相反,我发现this in the Angular2 documentation这似乎意味着Messaging服务是受支持的选项......

0 个答案:

没有答案