react:路由

官方文档:https://reactrouter.com/en/main/start/overview#pending-navigation-ui

一:简单版本

先 npm i react-router-dom

main.ts中内容替换为

javascript 复制代码
import ReactDOM from 'react-dom/client'
import App from './App.tsx'
import './index.css'
import {
  createBrowserRouter,
  RouterProvider,
  Route,
  Link,
} from "react-router-dom";

const router = createBrowserRouter([
  {
    path: "/",
    element: (
      <div>
        <h1>Hello World</h1>
        <Link to="about">About Us</Link>
      </div>
    ),
  },
  {
    path: "about",
    element: <div>About</div>,
  },
]);

ReactDOM.createRoot(document.getElementById('root')!).render(
  // <React.StrictMode>
  //   <App />
  // </React.StrictMode>,
  <RouterProvider router={router} />
)

方式二:

// 页面、编程式跳转

main.ts

typescript 复制代码
import ReactDOM from 'react-dom/client'
import App from './App.tsx'
import Page1 from './pages/page1.tsx'
import Page2 from './pages/page2.tsx'
import './index.css'
import {
  createBrowserRouter,
  RouterProvider,
  Route,
  Link,
} from "react-router-dom";

const router = createBrowserRouter([
  {
    path: "/",
    element: <Page1 />,
  },
  {
    path: "about",
    element: <Page2 />,
  },
]);

ReactDOM.createRoot(document.getElementById('root')!).render(
  // <React.StrictMode>
  //   <App />
  // </React.StrictMode>,
  <RouterProvider router={router} />
)

page1.tsx

typescript 复制代码
import { useNavigate } from 'react-router-dom'
 const  page1 = () => {
    const naviagte = useNavigate()
    return <div>
        page1
        <button onClick={() => {
            naviagte('/about')
        }}>去page2</button>
    </div>
}

export default page1

page2.tsx

typescript 复制代码
const  page2 = () => {
    return <div>
        page2
    </div>
}

export default page2
相关推荐
答案answer5 分钟前
一个非常实用的Three.js3D模型爆破💥和切割开源插件
前端·github·three.js
掘金安东尼20 分钟前
Fun with TypeScript Generics:玩转 TS 泛型
前端·javascript·面试
掘金安东尼21 分钟前
Next.js 企业级落地
前端·javascript·面试
掘金安东尼25 分钟前
React 性能优化完全指南 2026
前端·javascript·面试
Moment34 分钟前
OpenClaw 从能聊到能干差的是这 50 个 Skills 😍😍😍
前端·后端·开源
小霖家的混江龙42 分钟前
从 0 到 1 实现一个 useState
前端·javascript·react.js
晓得迷路了1 小时前
栗子前端技术周刊第 118 期 - Oxfmt Beta、Angular GitHub stars、React 基金会...
前端·javascript·react.js
亿元程序员1 小时前
小伙伴说我的拼图游戏用Mask不能合批...
前端
恋猫de小郭1 小时前
AI 正在造就你的「认知卸载」,但是时代如此
前端·人工智能·ai编程
摸鱼的春哥2 小时前
Agent教程14:记忆才是Agent开发的核心
前端·javascript·后端