1

如果我有一个触发自定义事件的小部件,并且该小部件包含在其他小部件的层次结构中,例如:

Parent1 contains Parent2 contains Parent3 contains CustomWidget

然后为了将初始事件传播到 Parent1,我是否必须一直添加事件处理程序并使每个内部节点触发相同的事件,还是有其他方法?

假设我们有以下自定义小部件1:

<g:FocusPanel>

 <g:Image/>

</g:FocusPanel>

它包含在自定义 widget2 中,它监听 widget1 触发的事件:

<g:ScrollPanel>

 <my:CustomWidget1/>

</g:ScrollPanel>

现在,如果自定义小部件 2 本身包含在另一个小部件中(反过来又包含在另一个小部件中......)那么为了捕获从小部件 1 调度的第一个事件,我是否必须分别向所有父小部件添加处理程序,或者还有另一个方法?

4

1 回答 1

3

GWT 建议使用 EventBus 来处理此类事件。

请参阅Google I/O 2009 - 架构 GWT 应用程序的最佳实践

请参阅 Google I/O 2009 - 架构 GWT 应用程序的最佳实践 (http://www.youtube.com/watch?v=PDuhR18-EdM)

于 2011-07-20T10:07:09.537 回答