React 学习笔记总结(五)

news2024/11/25 1:09:05

文章目录

  • 1. React 嵌套路由(多级路由)
  • 2. params参数 与 query参数
  • 3. React路由组件 传递params参数数据
  • 4. React路由组件 传递search参数
  • 5. React路由组件 传递search参数
  • 6. React路由组件 特殊情况: 刷新页面
  • 7. React路由 的 push 和 replace
  • 8. React的 编程式路由
  • 9. React路由 withRouter
  • 10. BrowserRouter 与 HashRouter的区别
  • 11. 开源的React UI组件库
  • 12. antd 自定义主题

1. React 嵌套路由(多级路由)


要用到嵌套路由,就不能开启严格匹配。否则无法匹配二级路由的。

在这里插入图片描述

因为一级路由时/home ,所以可以通过模糊匹配进行操作,让一级路由对应组件和二级路由对应组件:
在这里插入图片描述

总结:
在这里插入图片描述

2. params参数 与 query参数


params参数 与 query参数格式:

# params参数如下格式:
params:/router1/id ,/router1/123,/router1/789 ,这里的id叫做params
# query参数如下格式:
query:/router1?id=123 ,/router1?id=456 ,这里的id叫做query。

3. React路由组件 传递params参数数据


Link的params参数传递:
在这里插入图片描述

对应路由Route要定义对应的key:
在这里插入图片描述

使用this.props.match.params获取params参数:
在这里插入图片描述


总结:
在这里插入图片描述

4. React路由组件 传递search参数


querystring库的使用:

  • 因为,query参数获取到后是?key1=value1&key2=value2形式。可以使用querystring库来转换成对象形式。

在这里插入图片描述

tips:自己封装也可以,但往往第三方写的要比自己封装的好一点。


search参数格式如下:
在这里插入图片描述

this.props.location.search参数来获取:

  • 获取到的是?key1=value1&key2=value2,要转成成对象形式。
    在这里插入图片描述

总结:
在这里插入图片描述

5. React路由组件 传递search参数


获取路由组件state参数:
在这里插入图片描述

在this.props.location.state中获取参数:
在这里插入图片描述
总结:
在这里插入图片描述

6. React路由组件 特殊情况: 刷新页面


三种路由要注意一个特别情况:刷新页面。

主要说:state参数,刷新后,为什么没有小时!

因为浏览器的history模式,存储了state参数。

在这里插入图片描述

7. React路由 的 push 和 replace


push模式 和 replace模式:对浏览器历史记录的栈的一个推送或者替换效果。
在这里插入图片描述

8. React的 编程式路由


路由的三个特殊属性中有一个history属性:

# history属性作用:可以理解为就是专门来进行跳转路由的。
go: f go(n)
goBack: f goBack()
goForward: f goForward()
push: f push(path,state)
replace: f replace(path,state)

# 5个函数进行操作。

编程式路由:

  • 对应携带params参数、携带search参数、携带state参数。
    在这里插入图片描述

通过this.props的history方法,进而调用replace,push方法来进行跳转路由。

总结:
在这里插入图片描述

9. React路由 withRouter


在这里插入图片描述

接受一个一般组件,然后将其加工为路由组件(路由组件对应的三个api)。

10. BrowserRouter 与 HashRouter的区别


BrowserRouter 与 HashRouter的区别
在这里插入图片描述

11. 开源的React UI组件库


material-ui(国外):http://www.material-ui.com

ant-design(国内蚂蚁金服):https://ant.design/index-cn

create-react-app的使用:https://ant-design.gitee.io/docs/react/use-with-create-react-app-cn

ant-design的按需引入:babel-plugin-import插件(v5已经移除)

在这里插入图片描述


早些版本是:config-overrides.js

在这里插入图片描述

新版本是:craco.config.js

这两个文件其实就是进行加工配置的,所以有些时候样式的按需引入等都可以进行加工操作。

12. antd 自定义主题


一般默认的antd主题是蓝色,想要改主题颜色之类的。

早些版本,可以通过config-overrides.js来进行加工配置。

新版本 自定义主题:https://ant-design.gitee.io/docs/react/customize-theme-cn

根据不同版本,看官方文档就行。

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

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

相关文章

Transformer架构:位置编码

2017年,Google等人提出了Vaswani提出了一种新颖的纯注意力序列到序列架构,闻名学术界与工业界的Transformer架构横空出世,它的可并行化训练能力和优越的性能称为自然语言处理领域和计算机视觉领域研究人员的热门选择,本文将重点讨…

elasticsearch--Master选举

最近一直在学习elasticsear相关的东西,在这学习的过程中记录一下比较重要的学习内容。方便以后看的时候加深印象。 假如宕机的节点是Master节点 下面是Maste节点选举 的流程图 在findMaster的方法中每隔一段时间就会ping所有的节点,看看有没有哪个节…

java设计模式三

文章目录4) 创建IOC容器相关的类5) 自定义IOC容器测试6) 案例中使用到的设计模式7.2 剖析MyBatis框架中用到的经典设计模式7.2.1 MyBatis回顾7.2.1.1 MyBatis与ORM框架7.2.1.1 MyBatis的基础使用7.2.2 MyBatis中使用到的设计模式7.2.2.1 Builder模式7.2.2.2 工厂模式7.2.2.3 单…

基于Java开发(PC)小说自检测系统【100010061】

Java 语言与系统设计课程(小说自检测系统) 一、目的与要求 ​ 自行下载最喜爱的小说 1 部。存到服务器中,格式自定。一般存储为文本文档。要求长篇小说,20 万字以上。举例说明:下载《三国演义》保存在服务器端。 ​…

Secure Boot功能简析

在数据中心中,云服务器由各种处理设备和外围组件(如加速器和存储设备)组成,这些设备通常都运行着固件。对云平台服务商来说,为保证这些设备的安全可靠,需要一种或多种机制,来保证这些设备在测试…

XYplorer使用教程

XYplorer使用教程 XYplorer是Windows的文件管理器。它具有标签式浏览,强大的文件搜索功能,多功能预览,高度可定制的界面,可选的双窗格以及一系列独特的方法,可以有效地自动执行频繁重复的任务。它快速,轻便…

【DCDC转换器】BUCK电路的演进

本文将是对BUCK型DCDC转换器的起步介绍,从BUCK电路模型的建立出发,可以对转换器原理有更清晰的认识。其次对三种不同类型开关电源转换器的原理进行计算,转换器的原理基本是类似的,相同的分析方法可以套用在其他模型上。最后引入了…

PHP基本语法(1)

前言:PHP是什么呢?PHP是一种后端开发用的语言,简单点说制作的网页分为静态和动态,静态网页用户体验性差,动态网页用户可以进行交互,而这种交互就需要PHP了。所以PHP他就是一门用于后端开发的语言。 注意&a…

操作系统实验1:操作系统的引导

操作系统实验1:操作系统的引导 现在是2022年12月22日,本人一如既往又是ddl战神😅 (虽然一周前刚立过flag) 两个月前就布置了的内容硬是拖到现在,这波实在是看不下去自己了😅😅😅 拖到了ddl的最后一天&…

String、StringBuffer、StringBuilder的区别

文章目录一、StringBuffer1、介绍2、StringBuffer中方法二、StringBuilder1.介绍2.常用方法总结一、StringBuffer 1、介绍 是可以存储和操作字符串,即包含多个字符的字符串数据。对于StringBuffer而言,本身是一个具体的操作类,所以不能像St…

推送MOBPUSH-API说明

消息监听接口 MobPushReceiver: 消息监听接口(包含接收自定义消息、通知消息、通知栏点击事件、别名和标签变更操作等) MobPush.addPushReceiver(MobPushReceiver receiver): 设置消息监听 MobPush.removePushReceiver(MobPushReceiver receiver): 移除…

2022年全国最新消防设施操作员模拟试题题库及答案

百分百题库提供消防设施操作员考试试题、消防设施操作员考试预测题、消防设施操作员考试真题、消防设施操作员证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 38.下列说法正确的是()。 A.低压供配电系统中&…

vue的基本概念与vue2的指令

目录 一、 Vue的基本概念 1、前端技术的发展(html、CSS、JavaScript) ​ 2、MVVM架构: 数据的双向绑定: 二、Vue开发的方式 1、基本方式:在页面中引入vue.js文件。(vscode) 2、组件…

智能网 联汽车信息安全发展趋势

智能网 联汽车信息安全发展趋势 智能网联汽车行业发展 根据工信部发布的《国家车联网产业标准体系建设 指南(智能网联汽车)》的定义,智能网联汽车是指搭载先进的车载传感器 、控制器、执行器等装置,并融合现代通信与网络技术&a…

Android设计模式详解之备忘录模式

前言 备忘录模式是一种行为模式,该模式用于保存对象当前状态,并且在之后可以再次恢复到此状态; 定义:在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样&#xf…

【单目3D目标检测】MonoDLE论文精读与代码解析

文章目录PrefaceAbstractContributionsDiagnostic ExperimentsPipelineRevisiting Center DetectionTraining SamplesIoU Oriented OptimizationExperimental ResultsPreface [CVPR2021] Ma X, Zhang Y, Xu D. Delving into localization errors for monocular 3d object detec…

Docker技术原理

一、Docker架构 Docker包括三个基本概念: 镜像(Image): Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。容器…

vue中使用tinymce富文本编辑器

之前都是用的quill富文本,但是因为要实现添加表格的功能,quill没有tinymce强大,所以改用了tinymce。当时也是百度了一堆的教程可是没有记录下来,现在发现有的细节忘记了,所以这个文章可能会有错误 。 当时看了好几个安…

全球智能网联汽车出货量预计

IDC 于 2020 年最新发布的《全球智能网 联汽车预测报告(2020-2024)》数据显示,尽管受新冠肺炎疫情冲击,2020 年全球智能网联汽车出货量预计较上一年下滑 10.6%,约为 4440 万辆,但到 2024 年全球智能网联汽车…

数据可视化之excel和finebi报表实现对比

当我们拿到数据,想对数据实现可视化报表设计。第一步就是要了解什么是数据可视化分析,且数据可视化分析的方法有什么?而且当我们拿到excel表格的数据,第一个想法是excel表格自身实现报表数据可视化,除了用excel本身实现…