Heim > Web-Frontend > js-Tutorial > Wie übergebe ich benutzerdefinierte Requisiten an Router-Komponenten in React-Router v4?

Wie übergebe ich benutzerdefinierte Requisiten an Router-Komponenten in React-Router v4?

Mary-Kate Olsen
Freigeben: 2024-10-29 19:23:02
Original
969 Leute haben es durchsucht

How to Pass Custom Props to Router Components in React-Router v4?

Übergabe benutzerdefinierter Requisiten an Router-Komponenten in React-Router v4

Bei der Arbeit mit mehrseitigen React-Anwendungen mit React-Router wird benutzerdefinierte übergeben Requisiten für einzelne Seiten können die Flexibilität Ihres Codes erhöhen. Dies ermöglicht eine maßgeschneiderte Funktionalität und Datenfreigabe über Komponenten hinweg.

Sie sind jedoch auf ein Problem gestoßen, bei dem das this.props.route-Objekt, das üblicherweise für den Zugriff auf über Routen übergebene Requisiten verwendet wird, undefiniert zurückgibt. Um dieses Problem zu lösen, sollten Sie die Render-Requisite in Ihrer Route-Komponente verwenden, wie in der React-Router-Dokumentation beschrieben:

<Route path="/" exact render={(props) => (<Home test="hi" {...props}/>)} />
Nach dem Login kopieren

Bei diesem Ansatz empfängt die Render-Prop-Funktion dieselben Props wie die Komponenten-Requisite, einschließlich benutzerdefinierter Requisiten wie Test. Um auf die Requisite in Ihrer Home-Komponente zuzugreifen, verwenden Sie this.props.test.

Außerdem stellen Sie sicher, dass Sie {...props} in der Render-Prop-Funktion übergeben, da dadurch sichergestellt wird, dass Standard-Router-Requisiten wie der Standort verwendet werden , Verlauf und Übereinstimmung werden ebenfalls an Ihre Komponente übergeben.

Das obige ist der detaillierte Inhalt vonWie übergebe ich benutzerdefinierte Requisiten an Router-Komponenten in React-Router v4?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage