react-router v6 路由
前言
之前写react的时候 路由真的是难用,这次更新后,极为好用!
嵌套路由

main.jsx
import './index.css';
import * as React from 'react';
import './utils/leancloud-helper';
import * as ReactDOM from 'react-dom/client';
import { createBrowserRouter, RouterProvider } from 'react-router-dom';
const Home = React.lazy(() => import('./pages/home'));
const Admin = React.lazy(() => import('./pages/admin'));
const AdminHome = React.lazy(() => import('./pages/admin/home'));
const User = React.lazy(() => import('./pages/admin/user'));
const Ban = React.lazy(() => import('./pages/admin/ban'));
const router = createBrowserRouter([
{
path: '/',
element: <Home />
},
{
path: 'admin',
element: <Admin />,
children:[
{
path: '',
element: <AdminHome />,
},
{
path: 'user',
element: <User />,
},
{
path: 'ban',
element: <Ban />,
}
]
}
]);
const rootEl = document.querySelector('#root');
ReactDOM.createRoot(rootEl).render(
// 如果路由开启了懒加载 这里一定要加 React.Suspense包裹
<React.Suspense>
<RouterProvider router={router} />
</React.Suspense>
);
嵌套路由的父路由组件需要这么写
admin/home/index.jsx
import { Outlet } from "react-router-dom";
// 声明式
const Admin = () => {
return <Outlet/>; // 相当于vue里的<router-view/>
};
export default Admin;
其它页面写法 就是正常写法即可。
跳转页面
import { useNavigate } from "react-router-dom";
// 组件中
const navigate = useNavigate();
navigate('/admin/user');
效果

react-router v6 路由的更多相关文章
- 从 React Router 谈谈路由的那些事
React Router 是专为 React 设计的路由解决方案,在使用 React 来开发 SPA (单页应用)项目时,都会需要路由功能,而 React Router 应该是目前使用率最高的. Re ...
- React Router v4 页面传值的三种方法
传值方法 1.props.params 使用React router定义路由时,我们可以给指定一个path,然后指定通配符可以携带参数到指定的path: <Route path='/user/: ...
- React 实践记录 03 React router
Introduction 本文主要参考了react router 的官方文档. React Router是一套完整的配合React的路由解决方案,可能你已经知道前端路由,或者知道后端有路由的概念,如下 ...
- react router 4.0以上的路由应用
thead>tr>th{padding:8px;line-height:1.4285714;border-top:1px solid #ddd}.table>thead>tr& ...
- react router @4 和 vue路由 详解(七)react路由守卫
完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 12.react路由守卫? a.在之前的版本中,React Router 也提供了类似的 ...
- react router @4 和 vue路由 详解(全)
react router @4 和 vue路由 本文大纲: 1.vue路由基础和使用 2.react-router @4用法 3.什么是包容性路由?什么是排他性路由? 4.react路由有两个重要的属 ...
- React Router 4.0 实现路由守卫
在使用 Vue 或者 Angular 的时候,框架提供了路由守卫功能,用来在进入某个路有前进行一些校验工作,如果校验失败,就跳转到 404 或者登陆页面,比如 Vue 中的 beforeEnter 函 ...
- React初识整理(四)--React Router(路由)
官网:https://reacttraining.com/react-router 后端路由:主要做路径和方法的匹配,从而从后台获取相应的数据 前端路由:用于路径和组件的匹配,从而实现组件的切换. 如 ...
- < react router>: (路由)
< react router> (路由): 思维导图: Atrial 文件夹下的index.js 文件内容: import React, { Component } from 'rea ...
- react router @4 和 vue路由 详解(五)react怎么通过路由传参
完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 7.react怎么通过路由传参? a.通配符传参(刷新页面数据不丢失) //在定义路由的 ...
随机推荐
- springAPI对事物支持之XML式配置
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerData ...
- 学习nodejs的一点笔记
>>1.模块:一个文件即为一个模块 1)global可以声明全局变量 (跨模块) 例如:global a = 100; console.log(global.a); //输出100 2 ...
- 自定义控件,重写 TextBox 实例
项目中可能会遇到重写控件的情况,特此记录下: 1 <Window x:Class="WpfApp6.MainWindow" 2 xmlns="http://sche ...
- [开源] .Net 使用 ORM 访问 人大金仓数据库
前言 京人大金仓信息技术股份有限公司(以下简称"人大金仓")是具有自主知识产权的国产数据管理软件与服务提供商.人大金仓由中国人民大学一批最早在国内开展数据库教学.科研.开发的专家于 ...
- CDH6.2.0部署-亲自操作验证可行
CDH6.2.0部署 PDF文档:https://files.cnblogs.com/files/duxingren/CDH6.2-pdf.zip 郑重声明:并非拿来主义.亲手实践并花费一天时间整理文 ...
- Vue(10)——Vue组件二(data选项、局部组件、组件通信)
Vue组件二--data选项.局部组件.组件通信 data选项 data选项用于储存组件数据 与实例data差别 必须存储在有返回值的函数当中 数据设置在返回值对象里 1.方式一 data:funct ...
- 关于正点原子input子系统,驱动中按键中断只检测了上升或下降沿却可以实现连按(EV_REP)的原因
问题 在学习到Linux内核input子系统时,产生了一个疑惑.可以看到,我们改造按键中断驱动程序(请见keyinputdriver.c(内核驱动代码)),通过检测按键的上升沿和下降沿,在中断处理函数 ...
- 从 UEFI 启动到双系统——记一次双系统 Linux 分区迁移
前言 我的台式电脑上,装了 Windows 和 Linux 双系统. 我有两块 1 TB 硬盘,就把它们叫作硬盘 0 和硬盘 1 吧.最开始的时候,硬盘 0 上装了 Windows 系统,而我的数据分 ...
- 笔记 - linux子系统更换阿里云镜像源
平时还是用 windows 多一些, 偶尔会玩一玩 linux, 之前给我一台多年的笔记本装了个 manjaro , 颜值是蛮高的, 就一点也不太熟, 就不想玩了, 还是用子系统, win 有支持 U ...
- GIM: 调用AI自动生成git提交消息的工具
GIM - Git Intelligence Message,是根据文件变更内容,自动请求用户配置的AI服务,生成提交消息的工具. 代码托管地址 https://github.com/davelet/ ...