gpt4 book ai didi

reactjs - React Router v4 如何仅在路径名更改时替换

转载 作者:行者123 更新时间:2023-12-05 04:10:15 32 4
gpt4 key购买 nike

我正在尝试使用 react-router v4 进行菜单导航

示例代码

<BrowserRouter>
<Link to="/">Home</Link>
<Link to="/about">About</Link>
</BrowserRouter>
// ...
<Switch>
<Route exact path="/" component={Home} />
<Route exact path="/about" component={About} />
<Route component={NotFound} />
</Switch>

问题

这段代码工作正常,但每次我点击一个链接。 BrowserHistory 总是推送新的位置,这使得浏览器无法正常后退/前进。

例。当我点击一个主页 5 次时,它应该只是按下 1 次并替换 4 次

仅在使用 BrowserRouter 时出现问题(HashRouter 正常工作)

Ex: BrowserRouter
Ex: HashRouter

我只想在路径不变时才进行链接替换。
有可能吗?有什么简单的方法吗?

最佳答案

如果您希望链接替换历史堆栈中的当前条目,您应该使用 replace <Link /> 上的属性组件。

检查此以获取更多信息:https://reacttraining.com/react-router/web/api/Link/replace-bool

查看 github 上的讨论:https://github.com/ReactTraining/react-router/issues/3776

关于reactjs - React Router v4 如何<Link>仅在路径名更改时替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44731322/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com