繁体   English   中英

GWT Bootstrap预输入事件侦听器?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM