React router.push 和 router.replace 之间的区别?

IT技术 reactjs react-router react-router-v4
2021-05-04 09:52:00

是什么区别阵营 router.pushrouter.replace

2个回答

路由器的历史就像一个stackroutes当您使用 时router.replace,您将覆盖堆栈的顶部。使用 时router.push,它会在stack.

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

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