2015-09-25 5 views
5

Sto cercando di creare un percorso che corrisponde a tutti i seguenti URL:opzionale Reagire Router parametro

/product/foo 
/product/foo/bar 

Ecco la mia rotta corrente:

<Route path="/product/:productName(/:urlID)" handler={SomeHandler} /> 

Secondo la documentazione su https://github.com/rackt/react-router/blob/master/docs/guides/basics/RouteMatching.md questo percorso dovrebbe corrispondere perfettamente ma non corrisponde a nessuno degli URL sopra.

Cosa devo fare per supportare questo parametro opzionale?

Sono su React Router versione 0.13.3 e se rimuovo lo (/:urlID) posso quindi corrispondere al primo URL ma non al secondo.

+1

** versioni per reagire-router ** '1.0.0' ** e superiori (tra cui' 2.x'), guardare ** [** qui **] (http: // stackoverflow.com/a/35604855/2030321) ... – Chris

risposta

7

Ok, la sintassi() è specifica per React Router 1.0, non per 0.13.3. Ho finito per usare il? sintassi:

<Route path="/product/:productName/?:urlID?" handler={SomeHandler} />