請給我關於GWT中的數據管理的想法。我在我的旅行門戶項目中使用Gwt,我的網頁與之前的頁面數據有關,但是當我按下瀏覽器的刷新按鈕時,我的數據丟失了。所以請告訴我是否有任何方法可以解決這個問題。歷史管理(刷新按鈕)
3
A
回答
0
的基本思想是將存儲在URL fragment(URL的#後的部分),一些國家 - 例如your-site.com/app#page-1
要偵聽更改片段,使用GWT的History
類。當用戶返回/轉發或刷新頁面時,片段將會更改。
所以你可以有你的應用程序做不同的事情時,URL有#page-1
VS #page-2
等
一個更廣義的和可擴展的解決方案,這是一樣的東西gwt-platform的Place架構(與演示,這是沿對於大型應用程序也是一個好主意)
1
GWT歷史類不能用於管理頁面刷新(僅後退/前進)。
單擊刷新按鈕向服務器發送請求,並從服務器重新加載應用程序的狀態。就這樣。你必須處理它。
如果您不想丟失數據,則必須找到一種方法在需要時將其保存在服務器上。
1
如果您的用戶擁有現代瀏覽器,則可以使用HTML5功能localStorage將頁面刷新之間的數據存儲在瀏覽器中。
檢查this支持的瀏覽器的線程。
1
您可以創建一個url片段來編碼您的數據。
String location =「ny」; History.newItem(「location =」+ location);
將與www.example.com#位置=紐約
網址片段的結果,那麼,如果刷新瀏覽器,您可以解碼網址片段,並確定該位置是紐約。
對於多個參數,您可以創建一個複雜的片段並對其進行解析。
History.newItem(「start =」+ startLocation +「& end =」+ endLocation); 然後該網址看起來像www.example.com#start = newyork & end = boston
相關問題
- 1. AngularJS管理歷史
- 2. 歷史API刷新失敗刷新
- 3. YUI瀏覽器歷史記錄管理器返回按鈕
- 4. 通用歷史管理
- 5. mysql管理歷史數據
- 6. 刷新頁面上的瀏覽器歷史記錄返回按鈕
- 7. 歷史記錄強制刷新
- 8. 歷史刷新物化視圖
- 9. 歷史API,刷新和書籤
- 10. 刷新按鈕
- 11. 任務管理器:CPU使用歷史
- 12. 聚合物路由 - 歷史管理
- 13. django在管理中的簡單歷史
- 14. 瀏覽器歷史記錄管理
- 15. Delphi歷史記錄 - 源代碼管理
- 16. Flex歷史記錄管理器
- 17. Actionscript 3:後退歷史記錄按鈕
- 18. jquery-ias - 歷史擴展按鈕樣式
- 19. AJAX後退按鈕歷史記錄
- 20. HTML5歷史禁用前進按鈕
- 21. jquery歷史pushstate關閉按鈕
- 22. 歷史記錄敏感後退按鈕
- 23. Angularjs歷史後退按鈕不工作
- 24. 沒有歷史的鏈接按鈕
- 25. 提交按鈕+ GWT歷史記錄
- 26. ASP按鈕和歷史回的OnClientClick
- 27. jQuery UI Tabs後退按鈕歷史
- 28. jquery歷史回覆按鈕重置
- 29. Android刷新按鈕
- 30. 刷新按鈕UIProgressBar