我正在使用react-router-dom
包中的链接使我的semantic-ui-react
<Dropdown.Item>
组件在新标签中打开一些URL。
首先,我的问题是,当我单击该组件时,在新选项卡中,我想转到的URL附加到了本地主机路由,然后在SO https://stackoverflow.com/a/47447458/5833816上找到了解决方案。
那里说我应该在URL之前加上//,所以不是'https://someurl.com'而是'// https://someurl.com'
但是应用此解决方案并没有完全帮助。现在,在新选项卡中,URL不会追加到已经存在的本地主机URL中,而是用'https://someurl.com'打开,而不是'http // someurl.com'-因此,无需:
这是代码: 组件:
<Dropdown.Item
as={Link}
to={url} // url was 'https://someurl.com', now is '//https://someurl.com'
target={newTab ? '_blank' : ''} // newTab's value is true
replace={newTab}
className='contextDropdownItem'
onClick={onClick}
disabled={disabled}
>
当我单击此下拉菜单项时,浏览器打开新标签,但URL为http // someurl.com,不带:
semantic-ui-react的版本:0.81.1, 反应:16.4.1, react-router-dom:4.3.1
答案 0 :(得分:0)
反应路由器不支持外部链接。请查看React-Router External link,了解有关如何解决此问题的一些想法,但我倾向于使用标准的<a href='...'>
。