[英]GWT Bootstrap typeahead event listener?
我正在使用GWTBootstrap3 Typeahead小部件。 主要问题是事件没有取消注册,并且事件在我加载该组件时捆绑了很多次。 默认情况下会缓存组件。 第一个组件加载触发事件1次,第二个组件加载触发事件2次,依此类推。 这引起了很多问题。 我尝试了HandlerRegistration和removeHandler()无法正常工作。 如果有人找到解决方案,请告诉我。
这是注册事件的代码:
HandlerRegistration typeAheadListener =
productSelect.addTypeaheadSelectedHandler(new TypeaheadSelectedHandler<Part>() {
@Override public void onSelected(TypeaheadSelectedEvent<Part> event) {
selectedPart = event.getSuggestion().getData(); // Handling the event
}
});
谢谢
我可以想到两种选择:
您可以在productSelect的构造函数中或在调用构造函数的代码中注册事件处理程序。 加载组件时不行。
您可以检查HandlerRegistration API,它提供了有关处理程序如何注销自身的提示:
new MyHandler() {
HandlerRegistration reg = MyEvent.register(eventBus, this);
public void onMyThing(MyEvent event) {
/* do your thing * /
reg.removeHandler();
}
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.