1. 程式人生 > 其它 >react頁面快取 使用本地儲存

react頁面快取 使用本地儲存

前面介紹了一種頁面快取的外掛

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