以编程方式反应路由器 v4 导航
Posted
技术标签:
【中文标题】以编程方式反应路由器 v4 导航【英文标题】:React Router v4 navigation programmatically 【发布时间】:2017-09-27 11:41:13 【问题描述】:当我使用 Redirect、Link 或 NavLink 的反应路由器时,一切都很好。但我需要一个以编程方式将我导航到路线的函数。
这就是我想要的:
if(a == 1)
this.context.history.push("/")
else
this.context.history.push("/home");
如您所见,react router v4 中不再存在上下文历史记录。我无法在 js 代码中编写 withroute 进行导航。谁能告诉我如何直接在 js 代码中导航?
谢谢
【问题讨论】:
你尝试过使用 React Router 的browserHistory
吗?
我正在使用 react-router-dom 我的意思是 v4。我无法提供任何解决方案
这能回答你的问题吗? Programmatically navigate using React router
【参考方案1】:
路由器会为你的 props 添加一个history
,你可以这样使用它:
this.props.history.push('/mypath')
查看更多信息:Navigating Programatically in React-Router v4
【讨论】:
这只会改变 URL,不会真正导航以上是关于以编程方式反应路由器 v4 导航的主要内容,如果未能解决你的问题,请参考以下文章