2015-10-27 92 views
1

我需要將用戶的應用程序導航歷史保存在本地存儲中,並且能夠在用戶關閉應用程序或重新啓動設備後進行恢復。

我正在創建一個離線應用程序,通過約10種形式「嚮導」用戶。我在每次更改時將數據狀態保存到localStorage,以及完成的最後一頁。這樣,如果他們關閉了應用程序或重新啓動手機,我可以將用戶恢復到正確的格式,並保存所有保存的數據。

問題是,當發生這種情況時,歷史就會消失。我看到我可以查看$ ionicHistory,但是如何保存並在未來恢復它?我可以將$ ionicHistory.viewHistory()的輸出保存到localStorage,但似乎沒有像.setHistory這樣的方法...

回答

1

此時Ionic不支持該功能。但我認爲您可以將持續的URL routeform data保存到localStorage。

這是我的想法手動:

  1. 當用戶重新打開應用程序,你可以打開一個彈出窗口,並要求用戶如果他想回來的持續視圖。
  2. comfirm按鈕應該有一個放入其中的href鏈接(從localStorage恢復)。如果用戶點擊確定,應用程序將自動導航到該視圖。
  3. 從localStorage恢復form data並將其綁定到視圖。
+1

是的,您的手動創意與我所做的相似。我正在展示一個啓動頁面,提示用戶,如果他們想要恢復其保存的表單,它會從localStorage加載表單數據,並使用$ state.go()將它們發送到最後一個狀態。問題是這樣做**導航欄中的ion-nav中的導航將它們發送回頁面,詢問他們是否想恢復其保存的表單**如果它們在第6頁上,我希望導航去到恢復後的第5頁(從最後一次「會話」),而不是返回到此「會話」的最後一頁(請求恢復或不恢復的頁面)。 –

+0

如果表單是線性的,則可以用按鈕標題替換返回按鈕到之前的狀態。 –

+0

您可以將所有導航歷史記錄存儲到數組嵌套對象中並將ID放入其中。然後檢查後退按鈕事件並執行一些過程以使用下一個/上一個ID測試當前ID並加載該視圖。 –