我正在寫一個react-redux應用程序,它有4條路線。我正在使用react-router來導航到不同的路由。我的問題在於,是否建議刪除導航到不同路由時的重複狀態?在react-redux應用程序中導航到不同路線時刪除redux狀態?
回答
一般來說,我不會說在過渡到應用中的其他路由時需要刪除現有狀態。如果你回到那個部分,你可以更快地顯示數據。您可能需要考慮是否有需要在您回來時刷新它。
由於我通過調用componentDidMount生命週期方法上的API服務器來加載數據,因此我不確定即使我不刪除REDX狀態,該怎麼去幫助我? –
如果數據已經存在,那麼您可以跳過該呼叫,如果這符合您的使用案例 –
是的,這是有道理的。感謝兄弟:) –
正如其他人在這裏所說的,即使你沒有在當前路線中使用它,也沒有理由從redux中刪除狀態。
你說你正在加載你的狀態componentDidMount
。每次路由切換時是否要重新加載服務器數據?因爲如果沒有,您可以添加一個條件到您的componentDidMount
以僅從服務器重新加載數據,如果尚未加載。
實際上,我不希望每次路由切換時都從服務器重新加載數據,因爲我在路由上啓用了自動刷新,這將確保從服務器獲取最新的更新數據。唯一的技巧就是要知道從最後一次卸載時開始的時間,以便我可以查詢在服務器間隔期間發生的任何更改(卸載重新裝入)。 –
只是一個建議。創建一個unmountedTimestamps reducer並在'''componentWillUnmount'''上發佈一個包含路由名稱和當前時間戳的動作 –
這就是很酷的建議,愛你bro:愛情stackoverflow(y) –
- 1. 從不同導航狀態中檢測應用程序恢復的狀態android
- 2. 更新路線和Redux的狀態數據在同一時間
- 3. Redux在導航到另一頁時失去狀態
- 4. 「路線不可用」調出ios中的導航應用程序
- 5. 如何導航到Framework7 + Vue應用程序中的路線?
- 6. Angular2 Redux和應用程序狀態
- 7. mapStateToProps()在Redux應用程序嵌套狀態的狀態?
- 8. 導航到不同的路線
- 9. 從Redux狀態中刪除項目
- 10. Angular2 + AOT應用程序在導航到新路線(子路線)時在瀏覽器中打開新選項卡
- 11. 更新路線變化的Redux狀態
- 12. 在WebView中刪除導航欄Android應用程序
- 13. 應用程序關閉時的用戶狀態,已刪除iOS
- 14. 刪除應用程序 - 刪除狀態歷史?
- 15. 在「準備提交」狀態中刪除ios應用程序
- 16. 在MFC窗口應用程序中刪除最大化狀態
- 17. 在我的應用程序中刪除狀態欄
- 18. 導航兩個應用程序與路線在reactjs
- 19. 如何在Redux中分離UI和應用程序狀態
- 20. 同步導航狀態
- 21. 如何從基於導航的iPhone應用程序中刪除導航欄?
- 22. 導航到某個路徑後清除位置狀態
- 23. 應用程序刪除didfinishlaunching在iOS中恢復狀態時未調用
- 24. 同時隱藏狀態欄和導航欄,如圖片應用
- 25. Silverlight導航應用程序用戶控件狀態
- 26. 如何在ReactRedux中實時處理狀態
- 27. 從導航抽屜應用程序(Android)中刪除活動
- 28. 從WPF中刪除導航欄頁面應用程序
- 29. 從WPF瀏覽器應用程序中刪除導航欄
- 30. 從導航欄中刪除最近的應用程序按鈕
我會假設Redux代表您的應用程序狀態_all_將包括所有不同的路線。所以不,不要刪除狀態。這是沒有意義的。 – Andy
是的redux狀態存儲所有路線的所有數據。我正在考慮只刪除我目前不在的路由所需的應用程序狀態的那部分。 –
考慮到我通過在componentDidMount生命週期方法上調用API服務器來加載數據這一事實,因此即使我不刪除該路由的重複狀態,我也不確定這將如何幫助我? –