我们的 Web 应用程序基于 mvp4g 框架。为了解释我的情况,我将使用以下符号:
A, B - two different gwt modules
presenterA, viewA - presenter and view pair in module A
viewA contains an iframe and a button along with other UI components
presenterB, viewB - presenter and view pair in module B
eventBusA - an eventBus in A with event handler in presenterA
eventBusB - an eventBus in B with event handler in presenterB
应用程序流程从加载A
. viewA
显示并包含一个按钮和一个 iframe 点击哪个模块B
通过调用 URL 加载到 iframe 内,同时隐藏viewA
活动查看。因此它仍然在后台活动。是一个单独的模块(和B
之间没有子父关系)。它加载并在单击按钮后我想再次进入一个事件,因为我想将状态从隐藏更改为可见。但不能从或访问。A
B
viewB
viewB
eventBusA
viewA
eventBusA
presenterB
eventBusB
我尝试了以下方法,但没有成功:
- 在 eventBusB 中创建和事件以通过 PresenterB 响应 viewB 中的点击。添加了presenterA 作为处理程序。
- 在同一事件中添加了 moduleToLoad ,以模块 A 为目标。它要求将 A 声明为子模块。
- 考虑使用 GWT-Exporter 项目的 javascript API。