GWT:刷新页面会导致整个 Web 应用程序重新启动。我应该在哪里保存状态?

Posted

技术标签:

【中文标题】GWT:刷新页面会导致整个 Web 应用程序重新启动。我应该在哪里保存状态?【英文标题】:GWT: Refresh page causes whole web app to restart. Where shall I save states? 【发布时间】:2013-03-19 07:14:53 【问题描述】:

我对 GWT 很陌生。我最近遇到的一个问题是关于重新加载网页。

假设我的网络应用有两个页面 A 和 B。页面 A 是一个登录页面。登录后,用户将被带到页面 B。如果用户在页面 B 上按下重新加载按钮,则整个 Web 应用程序将重新启动(将再次调用 EntryPoint 的 onModuleLoad)。尽管我使用历史记录将浏览器保持在页面 B 上,但所有保持状态的对象都被重新创建,因此页面 B 将无法加载(例如用户登录信息等)。

我确信这对于 GWT 开发人员来说是一个非常常见的问题。谁能告诉我:

1. How to keep some of the objects in GWT while reloading page? 
2. Is there anyway to just reload a page rather than the whole web app?

非常感谢

【问题讨论】:

***.com/questions/2780956/… 【参考方案1】:

试试https://developers.google.com/web-toolkit/doc/latest/DevGuideMvpActivitiesAndPlaces。如果你真的需要存储一些东西,你可能会使用 Cookie、html5 存储,或者使用一些通过 RPC 访问的服务器端存储。

【讨论】:

以上是关于GWT:刷新页面会导致整个 Web 应用程序重新启动。我应该在哪里保存状态?的主要内容,如果未能解决你的问题,请参考以下文章

thinkPHP数据分页,为啥点击分页按钮的时候会把整个模板模板一直重复渲染

小程序刷新页面的方法

jQuery 的 ajax 导致 FireFox 中的整个页面刷新

vue项目,实现页面局部刷新 非window.location.方式

GWT 应用程序中的导航

vue怎么在刷新前调用一个方法