So habe ich Schwierigkeiten, diese einfache Situation für mich in React Router 4 arbeiten. Im Grunde habe ich einen Parameter zum Abrufen von Benutzerdaten, die eine Komponente /:user
gerendert werden. Ich habe auch ein paar mehr spezifische Ansichten auf dieser Seite, die so ähnlich rendert /:user/:specificView
. Um zu verhindern, dass letzterer Match-Benutzer wie specificViews vermisse ich habe versucht, die folgende Regex, aber nichts scheint richtig zu arbeiten.React Router 4 relative Pfade
<div>
<Switch>
<Route
exact
path="*/:user/:specificView(coolview|niceview|okview)"
render={routerProps =>
<SpecificViewContainer {...routerProps} {...this.props}/>}/>
<Route
path="/:user"
render={routerProps =>
<UserPageContainer {...routerProps} {...this.props}/>}/>
</Switch>
</div>
Die relative Pfade Teil kommt in dem diese beiden Routen oben auf etwas sitzen kann (/coolusers/:user/:specificView
, /okusers/butnotbad/:users/:specificView
... etc), so müssen sie die letzten Stücke des Pfadnamens sein.
Ich habe viel gegoogelt und es scheint, das relative Pfadformat :user/:specificView
, wo die Öffnung Strich weggelassen wird vorgeschlagen wurde, aber es funktioniert nicht so glaube ich nicht, dass es sie in gemacht: https://github.com/ReactTraining/react-router/issues/5127
Jede möglichen Hilfe sei großartig! Leider bin ich mit der relativen Pfad-Sache fest, weil ich nie weiß, was die serverseitige Betrachtungsroute sein wird.