2015-06-17 9 views
5

У меня есть следующие маршруты: можно ли получить текущее название маршрута и применить его собственный обработчик?реагировать маршрутизатор - получить текущий маршрут

var routes = (
<Route name="app" path="/" handler={OurSchoolsApp}> 
    <DefaultRoute name="home" handler={HomePage} /> 
    <Route name="add-school" handler={AddSchoolPage} /> 
    <Route name="calendar" handler={CalendarPage} /> 
    <Route name="calendar-detail" path="calendar-detail/:id" handler={CalendarDetailPage} /> 
    <Route name="info-detail" path="info-detail/:id" handler={InfoDetailPage} /> 
    <Route name="info" handler={InfoPage} /> 
    <Route name="news" handler={NewsListPage} /> 
    <Route name="news-detail" path="news-detail/:id" handler={NewsDetailPage} /> 
    <Route name="contacts" handler={ContactPage} /> 
    <Route name="contact-detail" handler={ContactDetailPage} /> 
    <Route name="settings" handler={SettingsPage} /> 
</Route> 
); 

Как мне получить текущее название маршрута?

Я хочу сделать что-то вроде этого?

Router.run(routes, function(Handler){ 
var mountNode = document.getElementById('app'); 

if(isRoute('home')){ 
     React.render(<Handler title="Home Page" /> , mountNode); 
}else{ 
     React.render(<Handler title="default" /> , mountNode); 
} 

}); 

Может ли кто-нибудь помочь?

ответ

2

Второй параметр функции обратного вызова Router.run - это объект состояния. Здесь вы можете увидеть все значения, которые удерживает государство, вы можете что-то использовать оттуда.

Смежные вопросы