具有Redux多个组件的React路由器

时间:2018-08-18 02:38:22

标签: reactjs redux react-router react-redux

Following are the details for code snippet. 

<Provider store={store}> 
<MuiThemeProvider theme={customTheme}> 
<Loader /> 
<Router> 
<Switch> 
<Route path="/" component={Layout} /> 
</Switch> 
</Router> 
</MuiThemeProvider> 
</Provider>
  • 在这里,我想在此版式之前调用登录组件并进入 用户单击登录名时的登录组件,则应进入此组件 布局。               此布局组件包含各种路线,并且具有一些常见组件,例如      标头      侧边栏       右侧栏      {7至8条路线的布局路线}      页脚      所以这里所有组件都使用公共标题侧栏右侧栏渲染      和页脚,但仅登录组件不包含       所有通用标头..如上所述,因此要求首先加载登录组件,然后单击登录应呈现 路线指定的布局中的组件。

1 个答案:

答案 0 :(得分:0)

您无法制作页面以扩展布局组件吗?在这种情况下,登录组件将渲染布局组件并通过props操纵标题组件的显示。您可以将默认props设置为布局以匹配您的大多数子页面

布局

const Layout = props => (

  <div className="layout-container">

   {props.displayCommonHeader && <CommonHeaderComponent />}

   {props.children}

  </div>

)

登录

const Login = props => (

  <Layout displayCommonHeader={false}>
   <MyCustomLoginFormComponent />
  </Layout>

)

某些子页面

const SomeSubpage = props => (
 <Layout displayCommonHeader={true}>
  Custom Stuff
 </Layout>
)

希望对您有帮助!祝您好运!