Ist es möglich, die <Route>
Elemente über eine Funktion zu erstellen? Ich möchte verschiedene Routen/Seiten anzeigen und die Anwendung ist nicht bewusst, wie viele sie sind. Die Seiten befinden sich in dem Zustand, der in einem Array von Seitenobjekten gespeichert ist. Jedes Seitenobjekt hat eine ID, Titel, Pfad und Körperelemente (bis jetzt). Ich denke, dass mein Router soll wie folgt aussehen:Erstellen von React-Routern Routen in einer Funktion
render((
<Router history={browserHistory}>
<Route path="/" component={App}>
<Route path="page1" component={CommonPage}/>
<Route path="page2" component={CommonPage} />
<Route path="page3" component={CommonPage} />
<Route path="page4" component={CommonPage}/>
<Route path="page5" component={CommonPage} />
<Route path="page6" component={CommonPage} />
</Route>
<Route path="*" component={NoMatch}/>
</Route>
</Router>
), document.body)
Und ich mag es wie mit einer Funktion definieren:
render((
<Router history={browserHistory}>
<Route path="/" component={App}>
{
mapPagesToRoutes(pages)
}
<Route path="*" component={NoMatch}/>
</Route>
</Router>
), document.body)
mapPagesToRoutes(pages) {
return pages.map(page =>() {
if(page.type === 'CommonPage' {
return <Route path={page.path} component={CommonPage}
}
}
}
Q1: Wie wird das gemacht? Q2: Wie identifiziere ich jedes mit etwas anderem als dem Pfad. Kann ich eine Art Schlüssel = page.id in <Route>
verwenden?
Vielen Dank für die Antwort, @ Jayce444 – Alvaro