Neben der Möglichkeit, einen "activeClassName" und einen "activeStyle" in NavLink festzulegen, gibt es einen Grund, NavLink over Link zu verwenden, wenn Sie Links zu anderen Routen auf nicht navigierenden Elementen (dh nicht Hauptnavigation in Kopf- oder Fußzeile) auf Ihrer Site erstellen das braucht keinen aktiven Zustand / Klasse?
89
NavLink
behält den richtigen Fokus auf der Seite für die Barrierefreiheit. Wenn Sie einen Link verwenden, geht der anfängliche Fokus beim Laden der Seite verloren, und Sie werden auch feststellen, dass das Durchblättern von Dropdowns bei der Verwendung ebenfalls unterbrochen wirdLink
. NavLink behebt dieses Problem.Antworten:
Die offizielle Dokumentation ist klar:
Die Antwort lautet also NEIN . Es gibt keine anderen Gründe als den genannten.
quelle
Wenn Sie Stil- oder Klassenattribute für Aktiv verwenden müssen
<Link>
, können Sie verwenden<NavLink>
Sehen wir uns das Beispiel an:
Verknüpfung
NavLink
quelle
Link-Komponente
NavLink-Komponente:
Ref: https://www.javatpoint.com/react-router
quelle
Einfach, wenn Sie verwenden,
<Link>
gibt es keine aktive Klasse für das ausgewählte Element.Im Gegensatz dazu wird mit
<NavLink>
dem ausgewählten Element hervorgehoben, da diesem Element eine aktive Klasse hinzugefügt wird.Hoffe nützlich für dich.
quelle