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。

相关推荐
avi91113 分钟前
Threejs新版本后glb导出提示.x问题GLTFExporter,替代3dmax
开发语言·前端·javascript·threejs·glb·gltfexporter
treesforest31 分钟前
前端表单提效实践:基于IP地理位置实现国家区号智能预填
前端·网络协议·tcp/ip·ip定位·ip属地
用户2986985301433 分钟前
React 中 Word 文档转图片的实践方案
前端·javascript·react.js
Csvn34 分钟前
异步并发控制:手写并发池、竞态防护与取消的完整方案
前端·javascript
专业抄代码选手42 分钟前
06|双缓冲与 Commit:让 Fiber 支持第二次渲染
前端·javascript·react.js
涛涛ing42 分钟前
4.8K Star!一套规则让 AI 帮你写出“像人写的”前端代码
前端
万物智能1 小时前
OpenHarmony源码树解剖—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
前端·后端
天才熊猫君1 小时前
通用虚拟滚动表格行拖拽排序:从思路到完整实现
前端·javascript
hh9501 小时前
Agent Plan × DeepSeek Harness:角色 Prompt 驱动的 Agent 分工优化与协作质量实验
java·前端·人工智能·prompt·adg·agent plan·adg成都社区
专业抄代码选手1 小时前
05|把递归渲染拆成 Fiber:让一棵大树可以暂停
前端·javascript·react.js