Javascript 在React Router中渲染多个组件

Javascript 在React Router中渲染多个组件,javascript,meteor,reactjs,react-router,react-jsx,Javascript,Meteor,Reactjs,React Router,React Jsx,我习惯于应用程序布局与多个收益区,即内容区和顶部栏标题。我想在React路由器中实现类似的目标。例如: <Router> <Route path="/" component = { AppLayout }> <Route path="list" component = { ListView } topBarComponent = { ListTopBar }/> </Route> <

我习惯于应用程序布局与多个收益区,即内容区和顶部栏标题。我想在React路由器中实现类似的目标。例如:

<Router>
  <Route path="/" component = { AppLayout }>
    <Route path="list"
           component = { ListView }
           topBarComponent = { ListTopBar }/>
  </Route>
</Router>

应用布局:


{--在此处显示ListTopBar--}
{--在此处显示列表视图--}
两个子组件应接收相同的道具


如何处理此问题?

要传递多个组件,可以执行以下操作:

<Route path="groups" components={{main: Groups, sidebar: GroupsSidebar}} />
<Route path="users" components={{main: Users, sidebar: UsersSidebar}}>

请参见此处的文档:

在v4中,根据,可以渲染多个组件,如下所示:

<Route path='/some-path' render={() =>
  <Fragment>
    <FirstChild />
    <SecondChild />
  </Fragment>
} />

} />

另一种方法在route的render方法中,可以使用react.createElement创建多个传递的组件

<Route render ={(props)=>React.createElement(Component1, {...props}},
                     React.createElement(Component2, {...props}}/> 
React.createElement(Component1,{…props},
React.createElement(Component2,{…props}}/>

您可以使用片段,而不是使用div。 `


} />

`

要渲染多个组件,可以执行以下操作:

<Route 
    path="/EditEmployee/:id"  
    render={(props) => 
        <div>
            <NavMenu />
            <EditEmployee {...props} />
        </div> 
    } 
/>

} 
/>

在这里,我将参数传递给特定的组件。

//这是渲染多个组件的最简单方法,对我来说很有用

<Router>
  <Route path="/">
       <ListView />
       <ListTopBar /> 
  </Route>
</Router>


链接已断开。它应该是:此属性不应该是
path='/popular'
而不是
to='/popular'
<Route 
    path="/EditEmployee/:id"  
    render={(props) => 
        <div>
            <NavMenu />
            <EditEmployee {...props} />
        </div> 
    } 
/>
<Router>
  <Route path="/">
       <ListView />
       <ListTopBar /> 
  </Route>
</Router>