react学习笔记:7

news2024/9/20 7:48:08
预览:(fetch发送请求、SPA、连续解构赋值、消息订阅、react router路由第三方库)
1、连续解构赋值

总结:

1、连续解构赋值的写法:对象包对象,第二个解构的value一定也是在{}内部的写法

2、消息订阅发布 (适用于所有组件之间通信)

数据更新-发布消息

 消息订阅:挂载中订阅和修改状态,卸载生命周期函数中取消订阅

3、fetch发送请求
   请求方案:
1、xhr、 jquery、axios(都是基于xhr封装的请求方法)
 2、fetch发送请求(也是window的方法)

代码优化: 出错放到catch里面

try catch优化

4、 SPA单页面应用

5、对路由的理解

映射关系:key是path,value就是组件,用于展示不用的页面内容

 
6.路由的基本使用

路由和路由器:路由器是管理路由的,路由器(router)和路由(routes)

react router dom路由第三方库(相比较react router用于web端更有针对性):
  •   是react的一个插件库
  •   专门用来实现一个SPA应用
  •   基于react的项目基本都会用到此库

安装 :npm i react-router-dom

中文文档官网:

React Router: Declarative Routing for React.js (docschina.org)

   (1).基本使用:

          明确好界面中的导航区、展示区

          导航区的a标签改为Link标签

          展示区写route标签进行路径的匹配

          app最外侧包裹一个<BrowserRouter>

上面的代码会有问题:BrowserRouter只需要一个,包路由链接和注册路由。才能切换内容。最理想的方式是在入口文件中的App组件实例挂载的地方包裹一个路由BrowserRouter。

 

7、页面组件:

组件分路由组件一般组件(通过配置路由路径,和路径匹配点击之后展示的是路由组件,不需要配置路由的是一般组件)

区别:1.props不同:一般组件的props没有传就是{}空对象,传递什么就收到什么,路由组件默认是有数据的,接收三个固定的属性。2、3不同如图:

 以下属性重要:

 

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

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

相关文章

SwiftUI 中 TabView 视图导航栏上按钮丢失问题的解决

问题现象 在某些情况下,SwiftUI 中 TabView 子视图中导航栏上的 ToolbarItem 会消失不见。 如上图所示:在子视图的 Kick Off 导航栏按钮被按下并回退到 TabView 中的主视图之后,其右上角的按钮竟然“神奇”的消失了!该如何解决它呢? 在本篇博文中,您将学到以下内容 问题…

【二分查找】3143. 正方形中的最多点数

本文涉及的基础知识点 C二分查找 LeetCode3143. 正方形中的最多点数 给你一个二维数组 points 和一个字符串 s &#xff0c;其中 points[i] 表示第 i 个点的坐标&#xff0c;s[i] 表示第 i 个点的 标签 。 如果一个正方形的中心在 (0, 0) &#xff0c;所有边都平行于坐标轴&…

大数据-Big Data

GPT-4o (OpenAI) 大数据&#xff08;Big Data&#xff09;指的是无法使用传统方法和工具在合理的时间内处理和分析的大规模数据集。大数据通常具有以下几种特征&#xff0c;也称为5V特征&#xff1a; 1. Volume&#xff08;数据量&#xff09;&#xff1a;大数据涉及到大量的信…

深度学习常用语句for param in params问题:为什么修改param之后,params对应元素也随之改变?

def sgd(params, lr, batch_size): #save"""小批量随机梯度下降"""with torch.no_grad():for param in params:param - lr * param.grad / batch_sizeparam.grad.zero_()sgd([w, b], lr, batch_size) 上述代码中&#xff0c;param遍历params的…

深度学习--------------Kaggle房价预测

目录 下载和缓存数据集访问和读取数据集总代码 数据预处理训练K折交叉验证模型选择总代码提交你的Kaggle预测提交Kaggle 下载和缓存数据集 import hashlib import os import tarfile import zipfile import requests# download传递的参数分别是数据集的名称、缓存文件夹的路径…

LabVIEW液压传动系统

开发了一种高效的液压传动系统&#xff0c;其特点在于采用LabVIEW软件与先进的硬件配合&#xff0c;实现能量的有效回收。此系统主要应用于工业机械中&#xff0c;如工程机械和船机械等&#xff0c;通过优化液压泵和马达的测试台设计&#xff0c;显著提高系统的能效和操作性能。…

华为OD机试 - 最长子字符串的长度(二) (Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;D卷C卷A卷B卷&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;私信哪吒&#xff0c;备注华为OD&#xff0c;加入华…

为什么要推荐R语言?欢迎订阅专栏《R 探索临床数据科学》

统计分析的强大支持&#xff1a; R语言最初是为统计分析而设计的&#xff0c;至今仍然在这方面保持领先地位。无论是基础统计、回归分析、时间序列分析还是高级统计建模&#xff0c;R都能提供丰富的函数和包&#xff0c;帮助我们轻松实现各种统计分析&#xff0c;很简单的代码就…

搭建个人博客需要做哪些事

文章目录 前言搭建步骤站点服务器站点域名注册域名ICP 备案公安备案域名解析 博客图床图床是什么图床搭建 博客站点搭建建站工具本地搭建博客部署 站点运营百度收录百度统计 总结 前言 花了几天时间&#xff0c;搭建了一个个人博客&#xff0c;也算是完成了年初立的一个flag&a…

VSCODE调试程序

1、打开 2、具体测试过程 &#xff08;1&#xff09;把路径改成真正执行的程序的绝对路径&#xff08;${workspaceFolder}这个代表就是项目根目录&#xff09; &#xff08;2&#xff09;然后先注释preLauchTask。 &#xff08;3&#xff09;重新编译一下文件&#xff0c;make…

全新神经网络:Kolmogorov-Arnold网络更具解释性,有望为物理学家提供新假设

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

FDE Solver 的 enabled 选项是不开放的

FDE Solver 的 enabled 选项是不开放的 正文正文 在 Mode 工程文件中,只能添加一个 FDE Solver,并且,不同于结构组件,对于结构组件,我们通常可以使用如下脚本将其设置为不启用状态。 比如,我们这里有一个三角型结构。 我们通过如下脚本设置其为不启用状态后, CAD 显示…

准确度与精密度:差异和示例

准确度与精密度&#xff1a;差异和示例 文章目录 一、说明二、准确性的定义三、精度的定义四、飞镖板上的准确度与精确度五、如何记住准确度与精确度六、如何测试准确度和精密度 一、说明 当您依赖数据得出结论时&#xff0c;准确度和精确度是测量的关键属性。这两个概念都适…

Git合并多笔提交为一笔

Git合并多笔提交为一笔 1. 背景 在实际项目开发中&#xff0c;我们会基于生产分支拉出很多需求分支&#xff0c;在需求分支开发完成后再将代码合到生产分支&#xff0c;但随着提交次数越来越多&#xff0c;我们在合到生产分支的时候就得一笔一笔的入库&#xff0c;特别麻烦&a…

day14-测试自动化之Selenium的元素操作、浏览器操作等

一、元素操作 1.1.为什么要学习操作元素的方法&#xff1f; 1).需要让脚本模拟用户给指定元素输入值 2).需要让脚本模拟人为删除元素的内容 3).需要让脚本模拟点击操作 1.2.元素常用操作方法 1).click&#xff08;&#xff09;点击方法 2).send_keys(value) 输入方法 3).clear(…

手表运动报告生成以及手机展示

一.运动报告组成部分 一般一份运动健康的报告包括以下信息&#xff1a; 1.运动轨迹区。2.报告数据区。(运动总体概览&#xff0c;如距离&#xff0c;时长&#xff0c;训练表现等)3.曲线图表区。(心率曲线&#xff0c;海拔曲线&#xff0c;速度&#xff0c;配速曲线) 二.组成部…

PHP + Laravel + RabbitMQ + Redis 实现消息队列 (三) 消费队列在RabbitMQ和redis中的发布和订阅

发布订阅&#xff08;Pub/Sub&#xff09; 对于消息队列传统的模式来说&#xff0c;一个消费者消费一条消息&#xff0c;这条消息被消费之后就不会再次被其它的消费者消费。但是在发布订阅模式中&#xff0c;一条消息是可以被多个消费者消费的&#xff0c;这些消费者其实相当于…

SOMEIP_ETS_021:echoINT8

测试目的&#xff1a; 验证DUT在发送和接收INT8参数时&#xff0c;是否能够保持参数的值和顺序不变。 描述 本测试用例旨在检验DUT在处理包含INT8类型参数的SOME/IP消息时&#xff0c;是否能够正确地发送和接收这些参数&#xff0c;并且确保返回的方法响应消息中的INT8参数值…

QT(C#)-QTabWidget修改字体后Tab页显示不完整的解决方法

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1、 前言2、问题示例3、解决方法 1、 前言 最近一段时间学习QT的程序开发&#xff0c;遇到了如标题所说的问题&#xff0c;经过查询和摸索找到了解决方法&#xff…

CSP-J 复赛 模拟题6

1.大小写字母互换&#xff1a; 题目描述 由输入给定一个字符串&#xff0c;你的任务是将原字符串中的大写字母转换成其对应的小写字母&#xff0c;还要将原字符串中的小写字母转换成对应的大写字母&#xff0c;其余字符不变。 输出转换之后得到的新字符串。 输入格式 一行…