是否可以通過函數創建<Route>
元素?我想顯示不同的路線/頁面,應用程序不知道它們有多少。頁面處於存儲在頁面對象數組中的狀態。每個頁面對象都有一個id,title,path和body元素(到目前爲止)。我認爲我的路由器應該是這樣的:在函數中創建react-router路由
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)
而且我想與像函數定義它:
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:這是如何完成的? Q2:我如何識別每個路徑以外的東西。我可以在<Route>
中使用某種鍵= page.id嗎?
謝謝你的回答,@ Jayce444 – Alvaro