Events GWT中的事件总线与HandlerManager?
当我处理一个GWT项目时,我使用Events GWT中的事件总线与HandlerManager?,events,gwt,event-handling,Events,Gwt,Event Handling,当我处理一个GWT项目时,我使用MVP模式和HandlerManager通过事件在应用程序上进行通信。现在我正在我的项目中实施历史机制。 他们(GWT tearm)使用ClassEventBus来管理事件 在阅读一些博客时,我发现HandlerManager用于小部件,而事件总线用于其他应用程序范围的通信 但是我觉得它们都有相同的功能,那么这两种含义的目的是什么,或者它们之间有什么区别 请帮助我HandlerManager是事件总线的祖先,它是从中提取出来的 主要区别在于HandlerManag
MVP模式
和HandlerManager
通过事件在应用程序上进行通信。现在我正在我的项目中实施历史机制。
他们(GWT tearm)使用ClassEventBus
来管理事件
在阅读一些博客时,我发现HandlerManager用于小部件,而事件总线用于其他应用程序范围的通信
但是我觉得它们都有相同的功能,那么这两种含义的目的是什么,或者它们之间有什么区别
请帮助我HandlerManager
是事件总线
的祖先,它是从中提取出来的
主要区别在于HandlerManager
有一个源,它对发送给它的事件强制执行,而EventBus
可以发送没有源(fireEvent
)或具有给定动态源(fireEventFromSource
)的事件。然后,您可以将处理程序附加到只有来自给定源的事件才会触发的EventBus
在小部件中,您希望强制事件源是小部件。对于全局应用程序范围的事件总线,您要么不需要源,要么根据需要为每个事件动态设置源(RequestFactory
将其用于其EntityProxyChange
事件,因此您只能侦听与给定类型的EntityProxy
相关的事件)
注意:HandlerManager的javadoc不鼓励将其用于应用程序范围的事件总线。我注意到javadoc;但这并不能解释为什么。