页面内有一个返回按钮,应该用 history.pushState 实现 还是用 history.back() 实现?

比如有个列表页、详情页。
详情页有个按钮是返回列表页。
如果用history.pushState实现,用户在详情页点返回按钮后,回到了列表页。用户再点击浏览器的「返回」,就回到了详情页。这感觉怪怪的。是不是可以用history.back() 实现?
但如果用history.back() 实现,如果用户是从收藏夹直接进来的详情页,用户再点网页返回按钮,就回不去列表页了。

阅读 1.3k
1 个回答
  1. 如果用户的操作可能存在记录的价值,那就用 pushState。比如从列表页进入详情页A,退回列表页,再进入详情页B。这种场景下,我们认为 A、B 都有记录的价值,应该保留在 history 里。
  2. 反之,则可以直接 back(),比如点进登录页面,又返回上一个页面。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题