react-router 4.0 路由嵌套问题
app.js(最外面组件)
<Router history={customHistory}>
<div>
<Route path="/layout" component={MyLayout}/>
<Route path="/login" component={Login}/>
</div>
</Router>
Login组件中没有layout布局,MyLayout组件中有左右布局的layout。
MyLayout组件
<Layout>
<HeaderCustom toggle={this.toggle} collapsed={this.state.collapsed} responsive={responsive} />
<Content style={{ margin: '0 16px', overflow: 'initial' }}>
<Route path="/" component={Home}/>
<Route path="/config" component={Config}/>
<Route path="/products" component={Category}/>
<Route path="/products/:categoryId" component={Products}/>
<Route path="/products/:categoryId/:productId" component={ProductDetail}/>
<Route path="/news" component={News}/>
<Route path="/data" component={Data}/>
</Content>
<Layout>
设想是/layout
的时候显示Home组件,/layout/config
显示Config组件,/layout/products
显示Products组件。可是/layout/config
和 /layout/products
都是显示Home组件。
请问一下该如何修改代码才能显示正确?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
<Route path="/layout/config" component={Config}/>
<Route path="/layout/products/:categoryId" component={Products}/>
react-router4需要写完整的路径吧
我想问下,route直接写在 Content 组件里面,和用Children来使用有什么区别?
Route exact path="/layout/" component={Home}/>