导航栏中页面之间的导航是使用 onClick 处理程序完成的,而不是通过 hrefs。执行此操作时,我无法中键单击以在新选项卡中打开,也无法右键单击链接并选择在新选项卡中打开。我正在使用反应路由器-v4。
路由示例。
<a onClick={() => this.props.history.push('/conference/')}>Conference</a>
有没有办法允许这种情况在反应中发生,或者我应该使用 hrefs 代替?
您可以使用<Link to='/conference'>Conference</Link>
来执行此操作。
你应该使用来自反应路由器的Link
<Link to={`/conference`}>Conference</Link>
您不使用Link
组件的原因是什么?
如果由于某种原因,您确实希望以编程方式链接到其他页面并且不使用,则可以使用此方法启用cmd/ctrl单击。
Tl;dr 按下 Ctrl/cmd 时在状态上放置一个标志,然后使用它来选择是history.push
还是window.open
新路径。
为我工作:
window.open('/conference', '_blank')