Además de la capacidad de establecer un "activeClassName" y "activeStyle" en NavLink, ¿hay alguna razón para usar NavLink sobre Link al crear enlaces a otras rutas en elementos que no son de navegación (es decir, no navegación principal en el encabezado o pie de página) en su sitio? que no necesita un estado / clase activa?
reactjs
react-router
react-router-v4
ñame55
fuente
fuente
NavLink
mantiene el enfoque adecuado en la página para la accesibilidad. Al usar el enlace, el enfoque inicial se pierde en la carga de la página y también notará que la tabulación a través de los menús desplegables también se rompe cuando se usaLink
. NavLink corrige esto.Respuestas:
La documentación oficial es clara:
Por tanto, la respuesta es NO . No hay otras razones excepto la mencionada.
fuente
Cuando necesite usar atributos de estilo o clase en activo
<Link>
, puede usar<NavLink>
Veamos el ejemplo:
Enlace
<Link to="/">Home</Link>
NavLink
<NavLink to="/" activeClassName="active">Home</NavLink>
fuente
Componente de enlace
Componente NavLink:
Ref: https://www.javatpoint.com/react-router
fuente
Simplemente, cuando lo usa,
<Link>
no hay ninguna clase activa en el elemento seleccionado.En contraste, con
<NavLink>
el elemento seleccionado se resalta porque a este elemento se le agrega una clase activa.Espero útil para ti.
fuente