0

我正在学习 GQuery。这看起来很酷,但也有点令人困惑。

我有以下 GWT 客户端代码。所选项目很好地淡出。但是该delete方法永远不会被调用。没有错误。这很奇怪。

甚至可以从 GQuery 方法内部调用非 GQuery 函数吗?

delete.addClickHandler( new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
        $(myIndicator).fadeOut(500, new Function(){
            @Override
            public void f() {                       
                super.f();
                delete();
            }                   
        });                 

    }
});

delete方法是:

private void delete() {
    removeFromParent();
    ruleDeleteRequestEvent.fire(new RuleDeleteRequestEvent(ruleBinder.getModel()));
}    
4

1 回答 1

1

不要调用super.f(),如果是这样,默认实现Function.f()将抛出一个异常,阻止下一行被执行(查看源代码)。

于 2013-08-20T21:32:29.853 回答