react頁面緩存 使用本地存儲


前面介紹了一種頁面緩存的插件

現在來說說第一種方法,僅供參考,記錄的不對的可以指點指點喲。
需求:
開發中有從詳情頁返回列表頁的需求,這樣一來頁面返回后使用react-router會直接刷新頁面,導致頁面中的分頁和搜索條件全部丟失,用戶體驗不佳,所以就必須將列表頁的狀態進行緩存。
解決辦法:
1.使用本地緩存localStorage
把列表頁中的狀態都存在本地,然后從詳情頁回到列表頁時,讓他默認使用本地緩存中的狀態,等列表頁渲染完了后,做一個清除緩存的操作,這樣的話,我們從別的頁面進入列表頁就不會使用本地緩存的狀態。這種方式會存在兩種弊端:
1.回到列表頁還是會拿本地的狀態去后端發請求獲取數據
2.當我們回到列表頁時,分頁page=2,然后去增加一個搜索條件,然后向后端發送請求就會報錯,因為很可能你這個搜索條件下根本不存在兩頁數據,這樣后端就給你返回提示報錯的信息
 解決第一個弊端:
我們把列表中的狀態和數據全部存在本地,等回到列表頁時全部用本地的緩存數據和狀態來渲染頁面,如果再做其他操作就重新發請求
 解決第二個弊端:
我們可以在搜索按鈕提交的事件中把page重置為1,這樣主要是搜索的話,就會默認給后端發送page=1的請求
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM