java - 总重量。在 MVP 模式中在哪里注册事件处理程序(eventBus)

标签 java gwt mvp

使用 MVP 范例时注册事件处理程序的最佳位置在哪里?我知道应用程序范围的事件必须在“AppController”中注册,但我需要从一个演示者引发事件,第二个演示者必须处理它。那么是在 AppController 中定义 eventHandler 还是在第二个 Presenter 中定义 eventHander 更好(在第一个 Presenter 中引发此事件)?

最佳答案

应用程序范围的事件不一定必须在AppControler中注册。 我认为只要您传递并使用一个全局单例EventBus,实际上您实际上并不在哪里注册它们。
通常,您可以通过构造函数参数(例如使用依赖注入(inject))将此全局 EventBus 传递给各个 Presenter。

在第一个演示者中,您可以注册由第二个演示者在全局 EventBus 上触发的特定事件。

关于java - 总重量。在 MVP 模式中在哪里注册事件处理程序(eventBus),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9287825/

相关文章:

google-app-engine - 从 Blob 存储备份 GAME 数据/文件到谷歌云存储/其他空间

gwt - 大型 GWT 项目的结构

java - GWT 中的 MVP。复杂的观点

c# - Opera 后退按钮缓存功能

java - 在 Selenium Webdriver 中按 xPath 元素搜索

json - 如何在 GWT 项目中将 JSON 转换为 Java 对象,反之亦然?

java - RequestDispatcher 转发正在重新路由回同一个 Servlet

Android MVP - 屏幕方向 - 保留演示者状态

java - 如何将监听器添加到 osx 上的 java 停靠图标

java - 在 Kafka Stream 中处理消息时发生错误时重新处理消息