Bedingte aktive Klasse im Menü über die aktuelle Route des aktuellen Routers setzen

8

Ich benutze react router 1.0.2 und meine Routen sehen so aus:

%Vor%

Meine App-Komponente sieht so aus und ich dachte, ich könnte den Ort in den Requisiten übergeben:

%Vor%

Ich möchte eine aktive Klasse in der Menu-Komponente bedingt setzen:

%Vor%

Aber das this.props.location ist null, wenn die Renderfunktion des Menüs aufgerufen wird?

Wie kann ich Requisiten an untergeordnete Komponenten übergeben?

    
dagda1 22.12.2015, 06:54
quelle

2 Antworten

4

Es sieht nicht so aus, als würden Sie die Requisite in das richtige Element überführen. Der children von App wäre die untergeordnete Route, die gerendert wird (also entweder Home oder Triangles ), aber Sie möchten, dass der Prop an Menu übergeben wird.

Um dies zu tun, übergeben Sie es einfach über JSX:

%Vor%     
Michelle Tilley 22.12.2015, 08:09
quelle
1

Setzen Sie einfach das Attribut activeClassName oder activeStyle auf Ihre Link-Komponente. Dies ist in React Router integriert, siehe Offizielle Dokumente für weitere Details.

    
Thomas KUNTZ 14.01.2018 12:55
quelle

Tags und Links