【问题标题】:difference between React router.push and router.replace?React router.push 和 router.replace 之间的区别?
【发布时间】:2019-03-28 00:47:57
【问题描述】:

React router.pushrouter.replace 有什么区别?

【问题讨论】:

    标签: reactjs react-router react-router-v4


    【解决方案1】:

    路由器历史记录就像routes 中的stack。当您使用router.replace 时,您将覆盖堆栈的顶部。在使用router.push 时,它会在stack 的顶部添加一条新路由。

    路由器历史记录允许您返回最后一页。例如,当用户导航到无效路线时,您可以使用router.replace 来防止用户导航回无效路线。

    【讨论】:

      【解决方案2】:

      您在网络浏览器中访问的页面的历史记录就像一个stack 数据结构。您可以push 一条新记录到历史堆栈的顶部,也可以replace 顶部记录。如果您使用push,然后点击浏览器的后退按钮,它将带您回到您当前所在的页面,但如果您使用replace,它将带您返回两页。

      【讨论】:

        猜你喜欢
        • 2020-12-31
        • 2015-09-07
        • 2019-08-23
        • 1970-01-01
        • 1970-01-01
        • 2017-07-22
        • 2019-06-06
        • 2018-11-17
        • 2017-03-15
        相关资源
        最近更新 更多