锚标签重定向以响应水疗中心

时间:2019-07-26 16:36:36

标签: javascript html reactjs react-router anchor

我想在我的React spa中使用锚标签(使用react-router)。但是,例如,如果我给它一个href的{​​{1}}值,它只会扩展我的水疗路线,例如google.com。有什么方法可以使我的锚标记直接链接到google.com?还是必须在我的myreactspa.com/sampleRoute/google.com值后面附加https://?谢谢!

3 个答案:

答案 0 :(得分:1)

使用Route组件渲染null并更改窗口的位置。

<Route path='/externalresource' component={() => { 
     window.location.href = 'http://google.com'
     return null
}}/>

答案 1 :(得分:0)

您应将https://附加到URL上,并将target标记的a属性设置为_blank。 React Router处理外部链接不是问题。

是这样的:

<a href="https://www.google.com target="_blank">Link</a>

无需尝试使用React Router处理外部链接

答案 2 :(得分:0)

反应路由器(及类似产品)是专门为SPA设计的。当您尝试导航到另一个网站(外部链接)时,不应由路由器来处理。如果您使用的是Link,那么无论您通过的路径如何,react-router都将其假定为SPA的路由(这是预期的行为,而不是错误)。

如果您想从您的网络应用导航至另一个网站,请使用普通的定位标记

<a href="website_link">Click here</a>

如果要在新标签页中打开页面,请使用

<a href="website_link" target="_blank" rel="noopener noreferrer">Click here</a>