Ü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!