React 官方文档学习笔记

Address:React 中文文档(Beta 版) | React 中文文档 | React 中文网 (bootcss.com);快速入门 – React 中文文档 (docschina.org)

Date:2024-07-18

注:该文章中与 Vue 通用的概念已被略过,仅作为学习 React 新概念的笔记总结。

1. 快速入门

学习 React 的基本概念。

2. 描述 UI

学习如何创建、自定义以及根据条件显示 React 组件。

使用 JSX 书写标签语言

a. JSX 规则:

  1. 只能返回一个根元素;

  2. 标签必须闭合;

  3. 使用驼峰式命名法给属性命名。

b. 使用转化器将 HTML 和 SVG 标签转化为 JSX。


在 JSX 中通过大括号使用 JavaScript

a. 使用引号传递字符串。

b. 使用大括号传递用作 JSX 标签内的文本和用作紧跟在 = 符号后的属性。

c. 使用 “双大括号”传递 JSX 中的 CSS 和对象。


将 Props 传递给组件

a. 向组件传递 props。

  1. 将 props 传递给子组件:

    export default function Profile() { return (   <Avatar     person={{ name: 'Lin Lanying', imageId: '1bX5QH6' }}     size={100}   />);
    }
  2. 在子组件中读取 props:

    function Avatar({ person, size }) { // 在这里 person 和 size 是可访问的
    }

b. 使用 JSX 展开语法传递 props:

function Profile(props) {   return (     <div className="card">       <Avatar {...props} />     </div>   );
}

c. 将 JSX 作为子组件传递:可以将带有 children prop 的组件看作有一个“洞”,可以由其父组件使用任意 JSX 来“填充”。

function Card({ children }) { return (   <div className="card">     {children}   </div>);
}
​
export default function Profile() { return (   <Card>     <Avatar       size={100}       person={{          name: 'Katsuko Saruhashi',         imageId: 'YfeOqp2'       }}     />   </Card>);
}

在学习这个部分的时候一直对组件间传递 children 的具体内容有所疑惑,后续结合官方文档中的多个具体代码样例和查阅相关资料,对这个概念有了深刻

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

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

相关文章

qt初入门8:下拉框,输入框模糊查询,提示简单了解 (借助QCompleter)

实现一个简单的模糊查询的逻辑&#xff0c;输入框能提示相关项。 主要借助qt的QCompleter 类&#xff08; Qt 框架中提供的一个用于自动补全和模糊搜索的类&#xff09;&#xff0c;结合一些控件&#xff0c;比如QComboBox和QLineEdit&#xff0c;实现模糊查询的功能。 1&…

Python实现Java mybatis-plus 产生的SQL自动化测试SQL速度和判断SQL是否走索引

Python实现Java mybatis-plus 产生的SQL自动化测试SQL速度和判断SQL是否走索引 文件目录如下 │ sql_speed_test.py │ ├─input │ data-report_in_visit_20240704.log │ resource_in_sso_20240704.log │ └─outputdata-report_in_visit_20240704.cs…

科普文:百度交易中台之系统对账篇

百度交易中台作为集团移动生态战略的基础设施&#xff0c;面向收银交易与清分结算场景&#xff0c;赋能业务、提供高效交易生态搭建。目前支持百度体系内多个产品线&#xff0c;主要包括&#xff1a;度小店、小程序、地图打车、文心一言等。本文主要介绍了百度交易中台的交易链…

海康威视综合安防管理平台 detection 前台RCE漏洞复现

0x01 产品简介 海康威视综合安防管理平台是一套“集成化”、“智能化”的平台,通过接入视频监控、一卡通、停车场、报警检测等系统的设备。海康威视集成化综合管理软件平台,可以对接入的视频监控点集中管理,实现统一部署、统一配置、统一管理和统一调度。 0x02 漏洞概述 海康…

总结——TI_音频信号分析仪

一、简介 设备&#xff1a;MSPM0G3507 库&#xff1a;CMSIS-DSP TI 数据分析&#xff1a;FFT 软件&#xff1a;CCS CLion MATLAB 目的&#xff1a;对音频信号进行采样&#xff08;滤波偏置处理&#xff09;&#xff0c;通过FFT获取信号的频率成分&am…

每天一个数据分析题(四百四十二)- 标签与指标

数据分析师在工作中常常会涉及两个概念&#xff1a;标签、指标&#xff0c;下面关于标签与指标的描述正确的是&#xff08;&#xff09;&#xff1f; A. 指标通常可以量化&#xff0c;但是标签一般是不可量化的 B. 标签是用来定义、评价和描述特定事物的一种标准或方式 C. 指…

keras框架的to_categorical方法

在阅读keras的中文文档时候&#xff0c;对于这里的代码不了解 y_train keras.utils.to_categorical(np.random.randint(10, size(1000, 1)), num_classes10)这里应该拆分为两部分看待 第一个是np.random.randint() 查看numpy文档知道&#xff1a; random.randint ( low , hi…

AWS DMS MySQL为源端,如何在更改分区的时候避免报错

问题描述&#xff1a; 文档[1]中描述MySQL compatible Databases作为DMS任务的源端&#xff0c;不支持MySQL 分区表的 DDL 更改。 在源端MySQL进行分区添加时&#xff0c;日志里会出现如下报错&#xff1a; [SOURCE_CAPTURE ]W: Cannot change partition in table members…

java thread怎么保证线程按顺序执行?如何实现线程排队?

在Java中&#xff0c;通常不保证多个线程按特定顺序执行&#xff0c;因为线程的调度是由操作系统管理的&#xff0c;并且是不可预测的。然而&#xff0c;如果需要确保线程按特定顺序执行&#xff0c;可以使用以下方法&#xff1a; 使用线程的join()方法&#xff1a;确保一个线…

【表单组件】地址组件新增精简模式

07/17 主要更新模块概览 快速筛选 精简模式 触发条件 自定义域名 01 表单管理 1.1 【表单组件】-数据关联组件新增快速筛选功能 说明&#xff1a; 数据关联组件新增快速筛选功能&#xff0c;用户在数据关联组件选择数据时&#xff0c;可以通过快速筛选功能&#xff0…

萝卜快跑突然就火了,背后发生了什么?

近日&#xff0c;百度旗下的自动驾驶出行平台“萝卜快跑”突然在网络上火了起来&#xff0c;成为热门话题。那么&#xff0c;这背后到底发生了什么&#xff1f; 1. 数字误传引发热议 首先&#xff0c;一些误传的数字在传播中起到了推波助澜的作用。例如&#xff0c;百度在2023…

Camtasia Studio2024最新版本新功能,并深入学习它的使用教程

在视频创作和教学内容制作领域&#xff0c;Camtasia Studio 一直是备受青睐的工具。随着 2024 版本的推出&#xff0c;Camtasia Studio 带来了更多强大的功能和优化&#xff0c;为用户提供了更高效、更便捷的创作体验。接下来&#xff0c;让我们详细了解一下 Camtasia Studio 2…

只需三步,即可使用 Kafka 托管服务快速部署微服务架构应用

微服务架构的应用程序的特点是将其组件组织得能够独立地进行开发、测试、部署和扩展。DigitalOcean App Platform&#xff08;应用平台&#xff09;的目标是通过允许用户在同一应用上添加多个组件&#xff0c;简化这一架构模型&#xff0c;使其更加平滑和易于管理。 一个简单的…

【BUG】已解决:TypeError: expected string or bytes-like object

TypeError: expected string or bytes-like object 目录 TypeError: expected string or bytes-like object 【常见模块错误】 【解决方案】 常见原因及解决方法 示例代码 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰…

【BUG】已解决:libpng warning: iccp: known incorrect sRGB profile

已解决&#xff1a;libpng warning: iccp: known incorrect sRGB profile 目录 已解决&#xff1a;libpng warning: iccp: known incorrect sRGB profile 【常见模块错误】 错误原因&#xff1a; 原因分析 解决方案 具体步骤 欢迎来到英杰社区https://bbs.csdn.net/topics…

Vue3 对比 Vue2

相关信息简介2020年9月18日&#xff0c;Vue.js发布3.0版本&#xff0c;代号&#xff1a;One Piece&#xff08;海贼王&#xff09; 2 年多开发, 100位贡献者, 2600次提交, 600次 PR、30个RFC Vue3 支持 vue2 的大多数特性 可以更好的支持 Typescript&#xff0c;提供了完整的…

QT5.9.9+Android开发环境搭建

文章目录 1.安装准备1.1 下载地址1.2 安装前准备2.安装过程2.1 JDK安装2.1.1 安装2.1.2 环境变量配置2.2 SDK配置2.2.1 安装2.2.2 环境变量配置2.2.3 adb 错误解决2.2.4 其他SDK安装2.2.5 AVD虚拟机配置2.3 NDK配置2.4 QT 5.9.9安装配置2.4.1 QT安装2.4.2 配置安卓环境3.QT工程…

特斯拉:领先未来的电动汽车先锋

特斯拉&#xff08;Tesla&#xff09;作为全球电动汽车行业的领军者&#xff0c;以其创新技术和前瞻愿景在全球范围内赢得了广泛的认可和喜爱。由亿万富翁埃隆马斯克&#xff08;Elon Musk&#xff09;于2003年创立&#xff0c;特斯拉不仅仅是一家汽车制造公司&#xff0c;更是…

2024公认音质最好的蓝牙耳机推荐?四款高品质音质耳机精选盘点

在2024年&#xff0c;随着无线技术的不断进步和消费者对音质要求的日益提高&#xff0c;蓝牙耳机市场呈现出前所未有的繁荣&#xff0c;各大厂商纷纷推出具有卓越性能的新品&#xff0c;以满足音乐爱好者和专业人士的高标准需求&#xff0c;那么在2024公认音质最好的蓝牙耳机推…

Java转换成小写字母

题目要求 给你一个字符串 s &#xff0c;将该字符串中的大写字母转换成相同的小写字母&#xff0c;返回新的字符串。 示例 1&#xff1a; 输入&#xff1a;s “Hello” 输出&#xff1a;“hello” 示例 2&#xff1a; 输入&#xff1a;s “here” 输出&#xff1a;“here” 示…