1. import {
  2. HashRouter,
  3. BrowserRouter,
  4. Switch,
  5. Route
  6. } from 'react-router-dom'
  7. function RouterComponent () {
  8. return (
  9. <BrowserRouter>
  10. <Switch>
  11. <Route path='/' exact component={Home}>
  12. {/* 动态路由 */}
  13. <Route path='/detail/:id' exact component={Detail}></Route>
  14. {/* 匹配404等页面 */}
  15. <Route path='*' exact component={NotFound}></Route>
  16. </Switch>
  17. </BrowserRouter>
  18. )
  19. }

路由配置懒加载

  1. import React from 'react'
  2. import { BrowserRouter, Route, Switch } from 'react-router-dom'
  3. const Home = React.lazy(() => import('./pages/Home'))
  4. const Detail = React.lazy(() => import('./pages/Detail'))
  5. const App = () => (
  6. <BrowserRouter>
  7. <React.Suspense fallback={<div>Loading...</div>}>
  8. <Switch>
  9. <Route exact path="/" component={Home} />
  10. <Route exact path="/detail" component={Detail} />
  11. </Switch>
  12. </React.Suspense>
  13. </BrowserRouter>
  14. )