React学习day07-ReactRouter-抽象路由模块、路由导航、路由导航传参、嵌套路由、默认二级路由的设置、两种路由模式

14、ReactRouter续

(2)抽象路由模块

        1)新建page文件夹,存放组件

        

组件内容:

        2)新建router文件夹,在其下创建实例

        

        3)实例导入,使用

        4)效果

(3)路由导航

        1)作用:
实现路由系统中的多个路由之间需要进行路由跳转,并可能在跳转的同时进行传参的需求
        2)分类
①声明式导航(通过【<Link to=”跳转的路径” />】组件跳转)(传参可直接通过字符串拼接的方式传递)

效果:

②编程式导航

(4)路由导航传参

        1)searchParams传参
                ①传参

                ②获取参数(先解构,再使用)

        2)params传参(传递多个参数,采取同样的步骤)
                ①在router中,找到需要参数的路径,使用参数名进行占位

        ②传参

        ③获取参数(通过使用useParams得到需要的params,params.参数名获取)

(5)嵌套路由

        1)概念:
在一级路由中又嵌套了其他路由(比如:嵌套至一级路由内的路由称为二级路由)
        2)步骤
        ①准备一级路由和二级路由组件

        ②在router中配置路由路径

        ③使用

        ④效果

点击链接,进行切换

(6)默认二级路由

        1)作用:当访问一级路由时,默认的二级路由也可以得到渲染
        2)步骤:
        ①找到router下的路由路径配置,在二级路由的位置去掉path,设置index属性为true(可以在路径为/时,显示内容)

        ②在一级路由的组件中修改默认二级路由组件的路径(可以实现路径的正常切换)

        ③效果

(7)404路由配置(路径找不到时使用)

        1)准备404组件

        2)在router中配置路径(在路由数组的结尾,以*为path配置路由)

        3)效果

(8)两种路由模式

        1)history模式(ReactRouter由createBrowerRouter创建)
        ①底层原理:history对象+pushState事件
        ②路径显示:不带#
        ③不需要后端支持

        2)hash模式(ReactRouter由createHahRouter创建)
        ①底层原理:监听hashChange事件
        ②路径显示:带#
        ③需要后端支持

        3)切换(在router配置路由路径中将创建实例的函数导入、替换即可)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1537700.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

佛山网站制作与设计

佛山网站制作与设计 在当今数字化时代&#xff0c;网站已成为企业展示形象、推广产品和服务的重要窗口。佛山作为一个经济迅速发展的城市&#xff0c;其网站制作与设计也日益受到重视。优质的网站不仅能提升企业的品牌形象&#xff0c;更是实现商业价值的重要工具。 一、网站制…

cout无法正常显示中文

cout无法正常显示中文 虽然你使用了buf.length()来指定写入的字节数&#xff0c;但是在包含中文字符&#xff08;UTF-8编码下每个中文字符占用3个字节&#xff09;的情况下&#xff0c;直接使用length()可能不会正确反映实际的字节数&#xff0c;因为它给出的是字符数而非字节…

RK3568平台(文件系统篇)VFS虚拟文件系统

一.VFS虚拟文件系统简介 为什么 Linux 内核的文件系统类型那么多,都能挂载上呢?为什么系统里可以直接 mount 其他文件系统呢?为什么 Linux 的虚拟文件系统这么强大?这得益于它的数据结构设计得十分精妙。 为支持各种本机文件系统,且在同时允许访问其他操作系统的文件,L…

gitee远程仓库OPEN GIT BASH HERE从错误中学习

推荐一个ai软件&#xff08;搜索器搜索kimi&#xff09;&#xff0c;是一个ai&#xff0c;有什么错误跟着一步步解决就可以了 当你创建一个仓库 会出现这些 打开这个窗口跟着敲就行了 到这里为止我还没出现错误&#xff0c;后面我把remote add添加远程仓库的地址输错地址了 所…

C++第七节课 运算符重载

一、运算符重载 并不是所有情况下都需要运算符重载&#xff0c;要看这个运算符对这个类是否有意义&#xff01; 例如&#xff1a;日期减日期可以求得两个日期之间的天数&#xff1b;但是日期 日期没有意义&#xff01; #include<iostream> using namespace std; clas…

文档内容识别系统源码分享

文档内容识别检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

鸿蒙开发之ArkUI 界面篇 五

Image 图片组件&#xff0c;用专门用于显示图片 语法&#xff1a;Image(图片源)&#xff0c;这里可以是网络、也可以是本地的图片 例如&#xff1a;Image(https://wxls-cms.oss-cn-hangzhou.aliyuncs.com/online/2024-04-18/218da022-f4bf-456a-99af-5cb8e157f7b8.jpg)效果如下…

VTD激光雷达(5)——05_OptiX_GPU

文章目录 前言一、总结 前言 一、 1 2 3 总结

如何在自动化测试中应用装饰器、多线程优化自动化架构?

1、装饰器概念 装饰器是Python中用于修改函数或类的语法结构的工具。它以函数作为输入参数&#xff0c;并返回一个函数作为一个输出函数&#xff0c;在不改变原有函数的代码情况下&#xff0c;给函数增加功能或改变函数行为。 装饰器的使用方式是在函数定义的上方使用 decorato…

re题(30)BUUCTF-[HDCTF2019]Maze

BUUCTF在线评测 (buuoj.cn) 查一下壳&#xff0c;32位upx壳 脱完壳放到ida&#xff0c;shiftF12看一下字符串&#xff0c;是个迷宫&#xff0c;maze&#xff08;迷宫&#xff09; 这里有一个经典的花指令 (导致找不到main函数) 下方有个奇怪的jnz指令&#xff0c;它跳转到了下…

[数据结构]算法复杂度详解

文章目录 一、引言1、想象数据结构与算法的奇妙世界2、算法复杂度的轻松解读3、数据结构与算法的温馨寄语 二、轻松掌握复杂度基础1、时间复杂度&#xff1a;算法速度的衡量尺2、空间复杂度&#xff1a;算法占地的衡量尺3、常见的复杂度 三、复杂度的计算1、时间复杂度计算2、空…

加密与安全_优雅存储二要素(AES-256-GCM )

文章目录 什么是二要素如何保护二要素&#xff08;姓名和身份证&#xff09;加密算法分类场景选择算法选择AES - ECB 模式 (不推荐)AES - CBC 模式 (推荐)GCM&#xff08;Galois/Counter Mode&#xff09;AES-256-GCM简介AES-256-GCM工作原理安全优势 应用场景其他模式 和 敏感…

【CSS】选择器(基础选择器、复合选择器、属性匹配选择器、结构伪类选择器、伪元素选择器)

选择器 引入方式基础选择器复合选择器属性匹配选择器结构伪类选择器伪元素选择器 引入方式 1&#xff1a;外联 <!-- css引入方式1&#xff1a;外联 外联与内嵌优先级相同&#xff0c;取决于加载顺序 --><link rel"stylesheet" type"text/css" h…

echarts 自定义标注样式自定义tooltip弹窗样式

文章目录 1. 实现根据经纬度自定义标注图片样式2. 实现鼠标悬浮标注自定义弹窗样式内容 1. 实现根据经纬度自定义标注图片样式 设置 symbol 属性为 image://${require("/assets/img/dataView/point.png")} 图片地址即可&#xff0c;注意前面跟 image:// 特有的写法b…

【数一线性代数】007入门

Index 本文稍后补全&#xff0c;推荐阅读&#xff1a;https://blog.csdn.net/weixin_60702024/article/details/140939599分析实现总结 本文稍后补全&#xff0c;推荐阅读&#xff1a;https://blog.csdn.net/weixin_60702024/article/details/140939599 用两个栈来实现一个队列…

Redis学习以及SpringBoot集成使用Redis

目录 一、Redis概述 二、Linux下使用Docker安装Redis 三、SpringBoot集成使用Redis 3.1 添加redis依赖 3.2 配置连接redis 3.3 实现序列化 3.4 注入RedisTemplate 3.5 测试 四、Redis数据结构 一、Redis概述 什么是redis&#xff1f; redis 是一个高性能的&#xf…

数据库恢复技术详解【从基础冗余数据到故障恢复的全过程】

在数据库系统中&#xff0c;数据的安全性和一致性至关重要。无论是面对事务故障、系统故障还是介质故障&#xff0c;数据库都需要具备强大的恢复机制来应对这些潜在风险。本文将带领大家详细了解数据库恢复的实现技术&#xff0c;重点介绍如何利用冗余数据、转储和日志文件来实…

Cpp快速入门语法(下)(2)

文章目录 前言一、函数重载概念与使用C为何支持函数重载&#xff1f; 二、引用概念语法特性权限(常引用)使用场景与指针的区别 三、内联函数四、auto关键字(C11)五、基于范围的for循环(C11)六、指针空值nullptr(C11)总结 前言 承前启后&#xff0c;正文开始&#xff01; 一、函…

【BFS专题】— 解决拓扑排序问题

拓扑排序介绍&#xff1a; 1、课程表 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 通过Map<Integer, List<Integer>> 来创建邻接图&#xff0c;数组来表示入度然后遍历课程数组&#xff0c;建图然后再拓扑排序&#xff0c;bfs最后在遍历入度数组&…

14届蓝桥杯嵌入式国赛

目录 前言&#xff1a; 1.使用CUbeMX进行基础初始化配置 &#xff08;1&#xff09;选则芯片与基本初始化 &#xff08;2&#xff09;LED配置 &#xff08;3&#xff09;按键配置 &#xff08;4&#xff09;定时器和PWM以及频率 &#xff08;5&#xff09;ADC电压检测 …