React+Typescript+react-router 6 创建路由操作

本文我们来看看路由的安装 其实路由的操作没有什么变化 但是还是给大家讲一下

那么我们打开项目

在项目终端输入

javascript 复制代码
npm install --save react-router react-router-dom

安装 一下 react-router 和 react-router-dom

这都是react开发很基本的插件了

不过大家安装前先注意好我的版本 react路由每个版本其实差异都还挺多的

这里 我们在src目录下创建一个文件夹 叫 router

然后 我们在下面创建一个 文件 叫 AppRouter.tsx

AppRouter.tsx组件编写代码如下

typescript 复制代码
import { Route, BrowserRouter as Router, Routes, Outlet } from "react-router-dom";

import App from "../App";
export default function AppRouter() {
  return (
    <Router>
      <Routes>
        <Route path="/" element={<Outlet />}>
          <Route index element={<App />} />
        </Route>
      </Routes>
    </Router>
  );
}

这边 我们声明了一个路由 路径是 / 渲染我们的 App组件

这里需要注意的是 在react-router-dom版本6中,exact属性已经被移除了。

而精准匹配可以通过这个 Outlet 特性来实现

如果你有多个路由 皆可以这样

大概归结为两个点 父组件设置 Outlet 就可以精准匹配 index 会被设置为路径 /

然后 我们找到src下的 index.tsx组件 将原本 App组件的引入位置 换成我们的路由组件

然后 我这边 App组件就顺便写的什么 测试一下效果就好了

然后启动项目

也是没有任何问题

相关推荐
To_OC3 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
Momo__5 小时前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
labixiong5 小时前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试
weedsfly9 小时前
还在用 Axios?你可能需要重新理解 XHR 与 Fetch
前端·javascript·面试
CoderWeen9 小时前
从零实现一个 Vue3 流程图编辑器:节点拖拽、贝塞尔连线与框选
前端·javascript
光影少年9 小时前
HashRouter 和 BrowserRouter 区别、底层原理、部署差异
前端·react.js·nestjs
To_OC19 小时前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
kyriewen1 天前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js
Awu12271 天前
⚡从零开发 Agent CLI(四):给 CLI 装上"LLM 引擎"
typescript·ai编程·claude
Asize1 天前
HTML5 Canvas 基础:从按帧动画到 ECharts 数据可视化
前端·javascript·canvas