页面回退历史记录

应用场景

a页面跳到b页面,再由b页面回到a页面
期望:a页面通过一些筛选条件,得到列表,点击列表跳转到b页面,b页面返回到a页面后,希望恢复到离开a页面时的状态

方法

  1. 首次进入a页面是什么状态,再次进入a页面还是什么状态,不做任何处理
    优点:简单,开发快
    缺点:不能得到预期效果
  2. 将a页面的列表数据直接保存在内存中,直接渲染
    优点:简单,开发快
    缺点:

       只适合单页面开发
       浏览器刷新后,数据不存在
       a页面的数据还是之前的状态,不能及时更新
  3. 将a页面的搜索条件存储出来,进入页面后,重新搜索
    a.将搜索条件存在url里面(最稳定)

       优点:可以获取到最新的数据,刷新浏览器数据还存在
       缺点:
           url长度限制(一般不会超过)
    
           游览器    最大长度(字符数)
           Internet Explorer    2083
           Firefox    65,536
           chrome    8182
           Safari    80,000
    
           开发难度增加,每一步都要去操作url,有洁癖的人看着不爽
    

    b.将搜索条件存在内存中

       优点:开发比上者快,可以获取到最新的数据
       缺点:
           只适合单页面开发
           浏览器刷新后,数据不存在
    

疑问解答

  1. 问:为什么上面的保存都是保存在内存中,而不是保存在本地,保存在本地就可以解决刷新浏览器数据不在的问题
    答:localStorage永久保存是优势也是劣势,不容易更新到最新的数据,不知道什么时候去删除和刷新数据,容易错乱

注意点

  1. 选择上面的哪一个方式,根据实际需求为准
  2. 目前我们的开发都是采用的单页面,浏览器刷新后,数据不存在,也可以接受,个人建议当前项目可以采用3b
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值