React Router 中的 (replace 和 <Redirect /> ) 有啥区别

Posted

技术标签:

【中文标题】React Router 中的 (replace 和 <Redirect /> ) 有啥区别【英文标题】:What is the difference between (replace & <Redirect /> ) in React RouterReact Router 中的 (replace 和 <Redirect /> ) 有什么区别 【发布时间】:2021-11-10 03:58:15 【问题描述】:

在 react-router(重定向)和 props.history.replace 中 他们在做同样的过程,当我按下返回页面时,我没有得到上一页,它们都是一样的,为了解决这个问题,我使用 push ,但为什么它们是一样的(替换 & )

【问题讨论】:

【参考方案1】:

将历史视为Stack 数据结构。

TDLR栈是如何工作的以及push和replace的区别

const history = ['/login']
// history.push("/dashboard") ['/login', '/dashboard']
// history.replace('/dashboard') ['/dashboard']
// history.pop() []

【讨论】:

以上是关于React Router 中的 (replace 和 <Redirect /> ) 有啥区别的主要内容,如果未能解决你的问题,请参考以下文章