我在一个实现这个类的类中有一个方法ValueChangeHandler<String>
是从方法中初始化的,onModuleLoad()
就像这样
mainController = new MainController();
History.addValueChangeHandler(mainController);
mainController.initialise(History.getToken());
该initialise()
方法如下所示;
public void initialise(String initialToken) {
if (initialToken.equals("")) {
History.newItem(String.valueOf(HistoryTokens.MAIN_PAGE), true);
} else {
History.newItem(initialToken, true);
}
}
当应用程序以空白历史令牌启动时,即按下启动默认浏览器onValueChange()
时,调用该方法,在应用程序运行时更改 url 调用该onValueChange()
方法。
但是,在 URL 中带有标记的空白浏览器选项卡中输入 URL,即http://127.0.0.1:8888/MyApp.html?gwt.codesvr=127.0.0.1:9997#mjh&jdfhfh=786543
,不会调用该onValueChange()
方法。当我到达声明的History.newItem(initialToken, true);
一部分时,我很困惑。if
我认为这将确保onValueChange()
被调用。怎么了?