javascript 使用React Router v4的多个布局

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 使用React Router v4的多个布局相关的知识,希望对你有一定的参考价值。

import React from "react"
import { Route, Switch } from "react-router-dom"

const AppRoute = ({ component: Component, layout: Layout, ...rest }) => (
  <Route {...rest} render={props => (
    <Layout>
      <Component {...props} />
    </Layout>
  )} />
)

const MainLayout = props => (
  <div>
    <h1>Main</h1>
    {props.children}
  </div>
)

const AltLayout = props => (
  <div>
    <h1>Alt</h1>
    {props.children}
  </div>
)

const Foo = () => (
  <p>Foo</p>
)

const Bar = () => (
  <p>Bar</p>
)

const App = () => (
  <div>
    <Switch>
      <AppRoute exact path="/foo" layout={MainLayout} component={Foo} />
      <AppRoute exact path="/bar" layout={AltLayout} component={Bar} />
    </Switch>
  </div>
)

以上是关于javascript 使用React Router v4的多个布局的主要内容,如果未能解决你的问题,请参考以下文章

javascript React-router启动码#react

javascript React Router v4 Auth

javascript React Router路由更改侦听器

使用 Webpack 2 和 React Router 进行 CSS 代码拆分

react-router的使用——路由的嵌套

深入浅出解析React Router 源码