为了账号安全,请及时绑定邮箱和手机立即绑定

react-router历史记录问题

react-router历史记录问题

千巷猫影 2019-03-07 18:13:37
假设有A、B、C、D四个页面:A -> B -> C -> D,也就是从A页面跳转到B页面再到C页面最后到D页面,都是用history中的push方法进行跳转的。两个场景:第一个场景,最后跳到D页面,能不能清除之前所有历史记录,也就是history只有D页面?第二个场景,在还没跳转到D页面,B可以前进到C页面,C页面可以后退到B页面,一旦C页面前进到D页面,这时候点击浏览器的后退按钮,能不能直接退回到A页面,不后退到B或C页面?请问有没有对应的解决方案?
查看完整描述

2 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

使用 history.replaceState() 方法,只保留 D 页面的记录

监听 popstate 事件

$(window).on('popstate', function () {

    // 省略了逻辑判断

    window.history.go(-3);

});


查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 1055 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信