首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GWT中的硬刷新

GWT中的硬刷新
EN

Stack Overflow用户
提问于 2013-04-30 23:37:41
回答 3查看 7.7K关注 0票数 8

使用Google Web Toolkit,我想编写等同于hard refresh (control + F5)的代码。

我不相信(或不知道)GWT的Window.Location是否能工作。

代码语言:javascript
运行
复制
import com.google.gwt.user.client.Window.Location;

Window.Location = currentPage; // I don't think it'll be hard refresh
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-30 23:40:10

要重新加载当前页面,需要调用Window.Location.reload()方法。

将重新加载当前浏览器窗口。所有GWT状态都将丢失。

或者你甚至可以指定你自己的JSNI (下面是怎么做的),因为在默认情况下force reload is false

代码语言:javascript
运行
复制
  public static native void forceReload() /*-{
      $wnd.location.reload(true);
    }-*/;
票数 9
EN

Stack Overflow用户

发布于 2013-04-30 23:50:18

根据https://developer.mozilla.org/en-US/docs/DOM/window.location#Methods的说法,您需要调用window.location.reload(true)来强制重新加载当前页面。

不幸的是,GWT只通过Window.Location.reload()包装window.location.reload(),由浏览器决定从缓存还是从另一个get检索页面。这样做是为了实现最具跨浏览器的解决方案。

从未尝试过,但您应该能够使用以下内容。

代码语言:javascript
运行
复制
public static native void reload(boolean force) /*-{
  $wnd.location.reload(force);
}-*/;
票数 5
EN

Stack Overflow用户

发布于 2013-05-01 00:15:10

对于重新加载gwt页面,您有两个选项:

1) Window.Location.reload();

重新加载当前浏览器窗口。所有GWT状态都将丢失。

2) Window.Location.replace("newurl");

用新的URL替换当前的URL。所有GWT状态都将丢失。在浏览器的历史记录中,当前的URL将被新的URL替换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16303729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档