从其他组件访问最新组件的路由

时间:2016-06-17 13:44:51

标签: reactjs react-router

我的react-router库存在问题。请看看我简化的路由:

<Router>
    <Route path="/" component={Layout}>
        <Route path="assets" component={Assets}>
            <Route path=":id/definition" component={AssetDefinition}>
                { /* etc. ... */ }
            </Route>
            <Route path=":id/version" component={AssetVersion}>
                <Route path=":verId/edit" component={EditVersion}></Route>
                { /* etc. ... */ }
            </Route>
        </Route>
        <Route path="applications" component={Applications}>
            <Route path=":id/definition" component={AppDefinition}>
                { /* etc. ... */ }
            </Route>
            <Route path=":id/version" component={AppVersion}>
                { /* etc. ... */ }
            </Route>
        </Route>
    </Route>
</Router>

Layout组件中,我根据路由呈现的Menu旁边呈现this.props.children。我的Menu是使用this.props.route.path动态生成的。

export default class Layout extends React.Component {
    render() {
        return (
            <div>
                <Menu />    
                { this.props.children }
            </div>
        );
    }
}

问题是我不知道Menu中的相应路由路径。

e.g。
我打开/assets/123/version。现在我想检查AssetVersion组件的路由子项(来自this.props.route.childRoutes)。我希望这条路线中的子元素(基于给定的路由)。但我得到的是assetsapplications,因为Menu更高且“#34}已修复&#34;在组件树中。

如何在Menu内的我的应用中访问最新组件的路由?

0 个答案:

没有答案