我有一个子演示者(添加到插槽中的父级),它在被调用eventBus
时通过(在条件下)触发事件:onBind()
class ChildPresenter extends PresenterWidget<?> {
void onBind() {
instance = initMyInstance();
if (instance == null) {
eventBus.fireEvent(new MyEvent());
}
}
//...
}
在父级上,我用onBind()
这样的方法处理事件:
class ParentPresenter extends Presenter<..>{
void onBind() {
eventBus.addHandler(MyEvent.TYPE, new MyEventHandler() {...} );
}
}
我也在父级中尝试过这个:addRegisteredHandler(LoggedOutEvent.TYPE, this)
而且 addVisibleHandler(...)
,我MyEventHandler
在父级演示者中实现了接口,但它不处理触发的事件。
我做错了吗?我还注意到,当我将处理过程移至onReveal()
我的父母演示者的方法时,它起作用了,但是两次!!