reactjs – 如何使用react-route在处理程序中获取路由名称?

前端之家收集整理的这篇文章主要介绍了reactjs – 如何使用react-route在处理程序中获取路由名称?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
作为主题,如何在处理程序中获取路径名称
例如:
var routes = <Route handler={App} path="/">
    <Route name="home" path="/home" handler={HomePage} />
    <DefaultRoute handler={HomePage} />
</Route>

Router.run(routes,function(Handler,state) {
  var params = state.params;
  React.render(<Handler params={params}/>,document.body);
});

现在假设我有一个这样的组件:

class HomePage extends React.Component {
    render() {
        return(<div>MyComponent</div>)
    }
}

我怎样才能获得当前的路线名称?更具体一点,我想得到

name="home"

属性来自

<Route name="home" path="/home" handler={HomePage} />
在react-router 0.13之前,您可以使用Router.State mixin来使用this.getRoutes().

对于react-router 0.13,您也可以使用它:

var currentRoutes = this.context.router.getCurrentRoutes();
var lastRoute = currentRoutes[currentRoutes.length - 1];
console.log(lastRoute.name);

对于react-router v2.0.x,您可以使用:

this.props.routes[this.props.routes.length-1]

猜你在找的React相关文章