我们的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访问。
我尝试了以下几点,但都没有奏效:
发布于 2013-10-21 14:17:17
您的问题是,模块B必须向模块A发送推送通知。没有现成的解决方案。
最好的解决方案是发送一个URL重新启动模块A,并使用Place模式恢复模块A的应用程序状态。
因此,模块A必须向模块B发送令牌(历史令牌)。模块B必须保存令牌,如果B模块将控制返回给模块A,则必须调用模块A的url并将令牌用作#-参数。看看mvp4g的历史加倍。
https://stackoverflow.com/questions/19433096
复制相似问题