0

如果用户在登录后误按了 F5 或刷新按钮,他应该留在同一页面上。现在他被重定向到登录页面。

我使用以下代码保持在同一页面上。

但是我不想通过在 onWindowClosing() 方法中编写 event.setMessage() 来警告用户这种情况。我只想做一些功能,即使他错误地刷新了浏览器,用户也会觉得什么都没有发生。

我希望避免由 [或如何处理手动取消创建的弹出窗口上的事件,以便不会重新加载 com.google.gwt.user.client.Window.confirm 给出的不需要的弹出窗口(“你真的想要退出?”) ]

    Window.addWindowClosingHandler(new Window.ClosingHandler() {
    @Override
    public void onWindowClosing(ClosingEvent event) {
     //how to prevent sending reload request OR [on cancel button MANUALLY]
    }});
4

1 回答 1

0

在上面的一些评论中提到了活动和地点作为您问题的解决方案。当然,它是一个漂亮而现代的。您将在 GWT 的这些文档中找到更多详细信息。

但如果你不想走那条路,另一种解决方案是使用 GWT 提供的历史机制。您应用程序的每个“页面”(相当一部分)都应具有特定的令牌。然后,您所要做的就是创建一个历史更改处理程序并根据用户重新加载操作传递的令牌呈现适当的对象。如果您想在用户注销(但不是浏览器重新启动)之间有一些“记忆”,您可以将此令牌保存在本地存储中,并在用户登录后使用它来将她引导到她所在的最后一页。

于 2012-07-11T09:44:37.117 回答