頁面回退歷史記錄

應用場景

a頁面跳到b頁面,再由b頁面回到a頁面
指望:a頁面經過一些篩選條件,獲得列表,點擊列表跳轉到b頁面,b頁面返回到a頁面後,但願恢復到離開a頁面時的狀態chrome

方法

  1. 首次進入a頁面是什麼狀態,再次進入a頁面仍是什麼狀態,不作任何處理
    優勢:簡單,開發快
    缺點:不能獲得預期效果
  2. 將a頁面的列表數據直接保存在內存中,直接渲染
    優勢:簡單,開發快
    缺點:瀏覽器

    只適合單頁面開發
       瀏覽器刷新後,數據不存在
       a頁面的數據仍是以前的狀態,不能及時更新
  3. 將a頁面的搜索條件存儲出來,進入頁面後,從新搜索
    a.將搜索條件存在url裏面(最穩定)url

    優勢:能夠獲取到最新的數據,刷新瀏覽器數據還存在
       缺點:
           url長度限制(通常不會超過)
    
           遊覽器    最大長度(字符數)
           Internet Explorer    2083
           Firefox    65,536
           chrome    8182
           Safari    80,000
    
           開發難度增長,每一步都要去操做url,有潔癖的人看着不爽

    b.將搜索條件存在內存中code

    優勢:開發比上者快,能夠獲取到最新的數據
       缺點:
           只適合單頁面開發
           瀏覽器刷新後,數據不存在

疑問解答

  1. 問:爲何上面的保存都是保存在內存中,而不是保存在本地,保存在本地就能夠解決刷新瀏覽器數據不在的問題
    答:localStorage永久保存是優點也是劣勢,不容易更新到最新的數據,不知道何時去刪除和刷新數據,容易錯亂

注意點

  1. 選擇上面的哪個方式,根據實際需求爲準
  2. 目前咱們的開發都是採用的單頁面,瀏覽器刷新後,數據不存在,也能夠接受,我的建議當前項目能夠採用3b
相關文章
相關標籤/搜索