如何使用 .push redux-router 重定向到外部 url?
How to redirect to external url using .push redux-router?
我有 Card
,它在点击时重定向到外部 URL。但是我需要使用 redux-router
的 .push
命令而不是使用 location.href
。我该怎么做?
代码的简单示例:
<Card
return (
title={props.title}
onClick={() => {
location.href='www.example.com'
}}
)
如果我使用这个 props.navigate('www.example.com')
它会像本地主机上的参数一样返回 URL。
如果你想让整张卡片都可以点击,你也可以尝试-
<a href="www.example.com" target="_blank"><Card /></a>
既然你是想搬出当前的应用,那么你是否使用react router并不重要
您不能使用 react-router 中的 Link
或 history.push
重定向到外部站点。您可以使用 window.location.href
或 window.location.replace
.
来自 history:
We don't support redirecting out of domain period. In general you should handle redirects to external URLs separately.
来自 Link:
<Link/>
is a router-aware anchor, if you want to link to an external site, use an <a/>
.
编辑:
Redux-Router 在内部使用 history
和 react-router
包,因此外部重定向也无法使用它。
我有 Card
,它在点击时重定向到外部 URL。但是我需要使用 redux-router
的 .push
命令而不是使用 location.href
。我该怎么做?
代码的简单示例:
<Card
return (
title={props.title}
onClick={() => {
location.href='www.example.com'
}}
)
如果我使用这个 props.navigate('www.example.com')
它会像本地主机上的参数一样返回 URL。
如果你想让整张卡片都可以点击,你也可以尝试-
<a href="www.example.com" target="_blank"><Card /></a>
既然你是想搬出当前的应用,那么你是否使用react router并不重要
您不能使用 react-router 中的 Link
或 history.push
重定向到外部站点。您可以使用 window.location.href
或 window.location.replace
.
来自 history:
We don't support redirecting out of domain period. In general you should handle redirects to external URLs separately.
来自 Link:
<Link/>
is a router-aware anchor, if you want to link to an external site, use an<a/>
.
编辑:
Redux-Router 在内部使用 history
和 react-router
包,因此外部重定向也无法使用它。