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?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-30 14:27:03644Durchsuche

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

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

Beim Erstellen von React-Anwendungen mit React Router ist es oft notwendig, benutzerdefinierte Requisiten zu übergeben zu untergeordneten Komponenten innerhalb des Routing-Baums. In React Router v4 kann der Zugriff auf Requisiten, die über den Router weitergeleitet werden, eine Herausforderung darstellen, da this.props.route möglicherweise nicht immer verfügbar ist.

Um dieses Problem zu beheben, besteht ein Ansatz darin, die Render-Requisite für die Route-Komponente zu verwenden . Dies ermöglicht das Inlining von Komponentendefinitionen und ein bequemes Rendern, ohne dass separate Komponentendateien erforderlich sind.

Laut der React Router-Dokumentation erhält die Render-Requisite für Route dieselben Route-Requisiten wie die Komponenten-Render-Requisite. Daher ist es möglich, benutzerdefinierte Requisiten zu übergeben, indem die Routendefinition wie folgt geändert wird:

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

Innerhalb der untergeordneten Komponente (Home) kann über this.props.test auf die benutzerdefinierten Requisiten zugegriffen werden:

this.props.test 

Es ist wichtig zu beachten, dass der Spread-Operator {...props} in der Routendefinition verwendet werden muss, um sicherzustellen, dass Standard-Router-Requisiten (wie Standort, Verlauf und Übereinstimmung) auch an das Kind übergeben werden Komponente.

Durch die Nutzung der Render-Requisite können Entwickler benutzerdefinierte Requisiten bequem an untergeordnete Router-Komponenten in React Router v4 übergeben und so die Flexibilität und Wartbarkeit ihrer Routing-Architektur verbessern.

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!

Stellungnahme:
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