¿Hay alguna forma de hacer que React Router abra un enlace en una nueva pestaña? Intenté esto y no funcionó.
<Link to="chart" target="_blank" query={{test: this.props.test}} >Test</Link>
Es posible suavizarlo agregando algo como onClick="foo"
el enlace que tengo arriba, pero habría un error de consola.
Gracias.
En React Router versión 5.0.1 y superior, puede usar:
<Link to="route" target="_blank" onClick={(event) => {event.preventDefault(); window.open(this.makeHref("route"));}} />
fuente
target="_blank"
es suficiente para hacer el truco.rel='noopener noreferrer'
si usatarget="_blank"
target="_blank"
funcionó para mí :) en react-router 5.0.1// first option is:- <Link to="myRoute" params={myParams} target="_blank"> // second option is:- var href = this.props.history.createHref('myRoute', myParams); <a href={href} target="_blank"> //third option is:- var href = '/myRoute/' + myParams.foo + '/' + myParams.bar; <a href={href} target="_blank">
fuente
target='_blank'
: recomiende agregarrel='noopener noreferrer'
a su<a>
etiquetaPuedes usar "{}" para el objetivo, entonces jsx no llorará
<Link target={"_blank"} to="your-link">Your Link</Link>
fuente
Para un enlace externo, simplemente use un acor en lugar de Link:
<a rel="noopener noreferrer" href="http://url.com" target="_blank">Link Here</a>
fuente
rel="noopener noreferrer"
se puede encontrar aquí mathiasbynens.github.io/rel-noopenerA partir de react_router 1.0, los accesorios se pasarán a la etiqueta de anclaje. Puede usar directamente
target="_blank"
. Discutido aquí: https://github.com/ReactTraining/react-router/issues/2188fuente
En mi caso, estoy usando otra función.
Función
function openTab() { window.open('https://play.google.com/store/apps/details?id=com.drishya'); } <Link onClick={openTab}></Link>
fuente
La forma más simple es usar la propiedad 'to':
<Link to="chart" target="_blank" to="http://link2external.page.com" >Test</Link>
fuente
Esto funciona bien para mi
<Link to={`link`} target="_blank">View</Link>
fuente
Para abrir una URL en una nueva pestaña, puede utilizar la etiqueta Enlace como se muestra a continuación:
<Link to="/yourRoute" target="_blank"> Open YourRoute in a new tab </Link>
Es bueno tener en cuenta que el
<Link>
elemento se traduce a un<a>
elemento y, según los documentos de react-router-dom , puede pasar cualquier accesorio que le gustaría incluir, como título, id, className, etc.fuente
target = "_ blank" es suficiente para abrir en una nueva pestaña, cuando estás usando react-router
por ejemplo:
<Link to={
/admin/posts/error-post-list/${this.props.errorDate}} target="_blank"> View Details </Link>
fuente