react crash course 2024(7) react router dom

安装

npm i react-router-dom

引入

import {Route,createBrowserRouter,createRoutesFromElements,RouterProvider} from 'react-router-dom'

在app.jsx

const router = createBrowserRouter(
  createRoutesFromElements(<Route index element = {<h1>My App</h1>}/>)
)

const App = () => {
  return <RouterProvider router={router}/>
}

使用object写路由

const router = createBrowserRouter([
  {
    path:"/",
    element:(
      <h2>hello rainbow</h2>
    )
  },{
    path:"about",
    element:<h2>little puppy</h2>
  }
])

或直接使用<Route/>组件写路由

const router = createBrowserRouter(
  createRoutesFromElements(
  <Route path='/' element={<h2>hello rainbow</h2>}></Route>
))

路由嵌套

const router = createBrowserRouter(
  createRoutesFromElements(
  <Route path='/' element={<MainLayout/>}>
    <Route   path="contact" element = {<h5 >some peopel just bad</h5>}/>
  </Route>
))

别忘了放子路由出口

在父 route 元素中使用outlet来渲染其子 route 元素。这允许在渲染子路由时显示嵌套 UI。

相关推荐
Annuo、7 分钟前
php中根据指定日期获取所在天,周,月,年的开始日期与结束日期
java·服务器·前端
流氓也是种气质 _Cookie20 分钟前
21 vue3之发布npm插件(hook&自定义指令)
前端·npm·node.js·发布插件
荔枝要好学28 分钟前
node.js从入门到快速开发一个简易的web服务器
服务器·前端·node.js
MortalTom39 分钟前
HTML·第三章课后练习题
前端·html
AiFlutter1 小时前
Flutter屏幕适配
前端·javascript·flutter
鱼干~1 小时前
【echarts】报错series.render is required.
前端·javascript·echarts
懒羊羊大王呀1 小时前
CSS——边框过渡效果
前端·css
是二牙1 小时前
Mac pnpm安装
前端·vue.js
csstmg1 小时前
vue2+keep-alive h5端 从首页进入客户列表-客户列表更新,从客户列表进入客户详情再返回,客户列表需要缓存筛选条件以及滚动位置
前端·缓存
weightOneMillion2 小时前
鸿蒙界面开发(九):列表布局 (List)
前端·学习·华为·list·harmonyos