我已经在这篇文章中实现了建议,并在第一次点击后禁用了我的按钮。 How to prevent DoubleSubmit in a GWT application? 我想知道的是,在我的失败和成功方法中重新启用我的按钮,它将始终重新启用。还有什么地方我可以放置一些代码,我总是希望在服务器回复时执行,而不是在失败和成功方法中复制它
答案 0 :(得分:3)
我认为每次都会调用onSuccess()
或onFailure()
。
至于有一个地方,您可以放置在收到服务器响应时始终运行的代码,您只需创建一个AsyncCallback
,其中的代码为onFailure()
和{{1} } 方法。然后,您可以在每次创建onSuccess()
时延长AsyncCallback
。
AsyncCallback
每当您想创建public MyAsyncCallback<T> extends AsyncCallback<T>(){
@Override
public void onFailure(Throwable caught){
//Do something
onResponse()
failed(caught);
}
@Override
public void onSuccess(T result){
//Do something
onResponse()
succeeded(result);
}
public void onResponse(){
// Do something or nothing by default
}
public abstract void failed(Throwable caught);
public abstract void succeeded(T result);
};
时,只需使用AsyncCallback
:
MyAsyncCallback