GWT - 历史第一个令牌出现问题
我遇到这个问题:当我调用 Content 类(由于 #param 决定要查看哪个页面的类)时,我会执行以下操作:
History.addValueChangeHandler(this);
if(!History.getToken().isEmpty()){
changePage(History.getToken());
} else {
History.newItem("homepage");
}
所以,现在,如果我查看浏览器的导航栏,我会看到 http://localhost:8084/GWT/?gwt.codesvr=127.0.0.1:9997#homepage
。没错。不幸的是,如果我在浏览器上按 Back
,我会看到它加载以前的地址,例如 http://localhost:8084/GWT/?gwt.codesvr=127.0.0.1: 9997
我一开始有一个“假”页面。
1 - 我该如何修复它?并使用默认令牌启动应用程序,或将其从历史记录中删除。或者在存在空令牌时调用 onValueChange
方法,然后使用某种 switch/if-else 决定工作流程。
2 - 作为相关问题,当我在构造函数类中调用 History.addValueChangeHandler(this);
时,netbeans 说“在构造函数中泄漏 this”。这意味着什么?
干杯
I have this problem : when i call the Content class (the one who decide which page to view, due to the #param) I do somethings like this :
History.addValueChangeHandler(this);
if(!History.getToken().isEmpty()){
changePage(History.getToken());
} else {
History.newItem("homepage");
}
So, now, if i look at browser's navigation bar, i see http://localhost:8084/GWT/?gwt.codesvr=127.0.0.1:9997#homepage
. And that's right. Unfortunatly, If i press Back
on my browser, i see that it load the previous address, such as http://localhost:8084/GWT/?gwt.codesvr=127.0.0.1:9997
I have a sort of "fake" page at the beginning.
1 - How can I fix it? And start the application with a default token, or remove it in the history. Or just call the onValueChange
method when there is empty token, and after decide the workflow with a sort of switch/if-else.
2 - As related question, when i call History.addValueChangeHandler(this);
in the costructor class, netbeans say "Leaking this in constructor". What it means?
Cheers
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
也许您忘记将
History.fireCurrentHistoryState();
添加到onModuleLoad()
方法的末尾?Maybe you forgot to add
History.fireCurrentHistoryState();
to end ofonModuleLoad()
method?您需要设置历史令牌并使用当前令牌触发历史更改事件。
您可以这样做:
You need to set a history token and fire the history change event with current token.
Heres how you could do it:
恕我直言,“proto://hostname#homepage”形式的主页网址很难看:)
1.
只是一个建议:2.
您的 EntryPoint 是否实现了ValueChangeHandler< ;字符串>
?IMHO, home url in form of "proto://hostname#homepage" is ugly :)
1.
Just a suggestion:2.
Does Your EntryPoint implementValueChangeHandler<String>
?