好的,我对GWTP中的“onBind”,“preparedFromRequest”,“onReveal”,“onReset”感到非常困惑。我不知道什么时候&在哪种情况下这些方法被称为。
好的,我得到Page1Presenter.java
(tokenName:page1
)有以下代码:
@Override
protected void onBind(){
System.out.println("on bind");
}
@Override
protected void prepareFromRequest(PlaceRequest request){
System.out.println("prepared from request");
}
@Override
protected void onReveal(){
System.out.println("on reveal");
}
@Override
protected void onReset(){
System.out.println("on reset");
}
现在,我在浏览器中打开page1,网址为:abc.com/#page1;param=1
,然后打印出来:
on bind prepared from request on reveal on reset
然后,我转到abc.com/#page2
&然后按回按钮,现在打印出来:
prepared from request on reset
然后,改变参数&输入abc.com/#page1;param=2
,它会显示:
prepared from request on reset
然后,我点击其他浏览器标签&点击返回包含网址abc.com/#page1;param=2
的标签,然后什么也没发生。我希望onReveal
会被调用。
此外,System.out.println();
过于简单,因此我们无法看到preparedFromRequest
与{}之间的区别。 onReset
。
如果我们有很多复杂的代码和如果我们将该代码放在preparedFromRequest
中,如果放入onReset
,它会有不同的行为吗?
&安培;它们在不同浏览器中的行为是否相同?