反应路由器 - 获取当前路由

时间:2015-06-17 11:01:05

标签: javascript reactjs react-router

我有以下路由,是否可以获取当前路由名称并应用自己的处理程序?

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);
}

});

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

Router.run的回调函数的第二个参数是状态对象。你可以在这里看到国家持有的所有价值,你可以从那里使用一些东西。