我试过在this question后面的答案,但无济于事。 我正在尝试使用反应路由器和嵌套路由来呈现不同的布局,具体取决于路由器的配置。 但无论存在的URL如何,总是显示path="/"
的路线。 这是我使用的路由器。Redux + React:反应路由器只呈现索引路由
<Route component={App}>
<Route component={LayoutOne}>
<Route path="/" component={ComponentOne}/>
</Route>
<Route component={LayoutTwo}>
<Route path="category" component={ComponentTwo}/>
</Route>
</Route>
这里是我用来映射调度到道具和连接的应用程序文件。
function mapStateToProps(state, ownProps){
return{
exampleProp: state.exampleProp,
};
}
function mapDispatchToProps(dispatch){
return bindActionCreators(actionCreators, dispatch);
}
const App = connect(mapStateToProps, mapDispatchToProps)(MainLayout);
export default App;
以上是主布局MainLayout
如上所示。
export default class MainLayout extends Component {
render(){
<div className="main-layout">
{this.props.children}
</div>
}
}
LayoutOne和LayoutTwo(为了简洁省略)是简单的类别说唱歌手,如下所示。
出口默认类LayoutOne扩展组件{ 渲染(){ 回报( {} this.props.children ) }}
而这里的ComponentOne和ComponentTwo分别只是简单的组件。
我的问题是只有ComponentOne呈现,无论存在什么URL。 如何解决此问题,以便我可以使用上面显示的嵌套路线? 您的帮助将不胜感激。 如果您需要任何其他信息,请询问我将尽最大努力用所需信息更新问题。 谢谢。
只是好奇 - 不使用'/ category'工作,而不是'category'? –