【react从入门到精通】react入门这一篇就够了

news2024/12/24 9:55:10

文章目录

  • 前言
  • 什么是 React?
  • 安装和配置 React
  • 创建 React 组件
  • 渲染 React 组件
  • 使用 JSX
  • 传递属性(Props)
  • 处理组件状态(State)
  • 处理用户输入(事件处理)
  • 组合和嵌套组件
  • 写在最后

在这里插入图片描述

前言

React 是一种由 Facebook 开发的流行的 JavaScript 库,用于构建现代的用户界面。它采用了组件化的方式,使得 UI 开发更加模块化、可复用和高效。本文将为您介绍 React 的基本概念和用法,帮助您入门 React 开发。

什么是 React?

React 是一种用于构建用户界面的 JavaScript 库,它可以帮助您创建交互性的用户界面。React 的核心思想是组件化,将 UI 拆分为小的、可复用的组件,通过组合这些组件构建复杂的用户界面。

安装和配置 React

要开始使用 React,您需要在项目中安装 React 相关的 npm 包。可以使用 npm 或 yarn 进行安装,并在项目中引入 React 相关的库。例如,您可以通过以下命令安装 React:

npm install react react-dom

安装完毕后,您可以在项目中引入 React:

import React from 'react';
import ReactDOM from 'react-dom';

创建 React 组件

React 组件是构建用户界面的基本单元。您可以通过创建类组件或函数组件来定义一个 React 组件。类组件使用 ES6 类语法,而函数组件则是一个简单的 JavaScript 函数。
下面是一个简单的函数组件的例子:

import React from 'react';

const Hello = () => {
  return <div>Hello, React!</div>;
};

export default Hello;

渲染 React 组件

要在页面上渲染 React 组件,您需要使用 ReactDOM.render() 函数将组件渲染到目标 DOM 元素上。例如:

import React from 'react';
import ReactDOM from 'react-dom';
import Hello from './Hello';

ReactDOM.render(<Hello />, document.getElementById('root'));

这将把 Hello 组件渲染到具有 id 为 root 的 DOM 元素上。

使用 JSX

JSX 是一种类似 HTML 的语法,用于在 JavaScript 中描述 UI 组件。它允许您在 JavaScript 代码中直接编写 HTML 标签和组件,使得创建 UI 更加直观和简洁。例如:

import React from 'react';

const Hello = () => {
  return <div>Hello, <strong>React</strong>!</div>;
};

export default Hello;

传递属性(Props)

React 组件可以通过属性(Props)来接收外部传递的数据。您可以将属性传递给组件,使组件能够根据传递的属性值渲染不同的内容。例如:

import React from 'react';

const Greeting = (props) => {
  return <div>Hello, {props.name}!</div>;
};

export default Greeting;

在这个例子中,Greeting 组件接收一个 name 属性,并在组件内部通过 {props.name} 将其渲染为文本内容。您可以在使用组件时通过传递不同的 name 属性值来定制欢迎语的内容。

处理组件状态(State)

React 组件可以拥有内部状态(State),用于存储和管理组件的数据。您可以通过使用 useState 钩子或类组件的 state 属性来创建和管理组件的状态。

例如,下面是一个使用 useState 钩子的函数组件,实现了一个简单的计数器:

import React, { useState } from 'react';

const Counter = () => {
  const [count, setCount] = useState(0);

  const increment = () => {
    setCount(count + 1);
  };

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={increment}>Increment</button>
    </div>
  );
};

export default Counter;

在这个例子中,count 是组件的状态值,setCount 是用于更新状态值的函数。通过使用 useState 钩子,我们可以在函数组件中使用内部状态。

处理用户输入(事件处理)

React 组件可以响应用户的操作,例如点击按钮、输入文本等。您可以通过在组件中定义事件处理函数来处理这些用户输入。例如:

import React, { useState } from 'react';

const InputForm = () => {
  const [inputValue, setInputValue] = useState('');

  const handleChange = (event) => {
    setInputValue(event.target.value);
  };

  return (
    <div>
      <input
        type="text"
        value={inputValue}
        onChange={handleChange}
      />
      <p>Input value: {inputValue}</p>
    </div>
  );
};

export default InputForm;

在这个例子中,我们定义了一个 handleChange 函数来处理输入框的变化事件,并通过 onChange 属性将其绑定到输入框上。每当用户输入文本时,handleChange 函数会被调用,从而更新组件的状态值。

组合和嵌套组件

React 允许您将多个组件组合在一起,形成复杂的 UI。您可以在一个组件中嵌套另一个组件,从而实现更高级的 UI 功能。

例如,下面是一个简单的组合例子,包含一个 Header 组件和一个 Footer 组件:

import React from 'react';

const Header = () => {
  return <h1>Header</h1>;
};

const Footer = () => {
  return <h3>Footer</h3>;
};

const App = () => {
  return (
    <div>
      <Header />
      <p>Content</p>
      <Footer />
    </div>
    )
}

写在最后

✨原创不易,希望各位大佬多多支持。

👍点赞,你的认可是我创作的动力。

⭐️收藏,感谢你对本文的喜欢。

✏️评论,你的反馈是我进步的财富。

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

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

相关文章

一些技术管理常见问题笔记

空降管理&#xff1a; 1 真诚靠谱&#xff1a; 思考我们能给上级、下级、公司带来什么价值。 遇到冲突&#xff0c;怎么决策&#xff1f; 团队、合作方了解清楚。 团队同学的简历&#xff0c;工作情况&#xff0c;背景能力有了解。 对应的产品经理、业务方的思维、背景。…

改善电商实时聊天体验的 5 大方法

今天&#xff0c;大多数网站都提供实时聊天支持作为选项。这是因为客户压倒性地将实时聊天列为他们的首选联系方式。 高达86%的消费者愿意在更好的客户体验上花费更多&#xff0c;但只有1%的人的期望始终得到满足&#xff0c;对于能够正确进行实时聊天的品牌来说&#xff0c;这…

润滑剂产业互联网平台搭建

润滑剂是一种广泛应用于工业、交通运输和农业等领域的重要物质&#xff0c;而润滑剂产业互联网平台的搭建可以更好地满足企业和用户的需求&#xff0c;提高行业效率&#xff0c;提升企业竞争力。下面是润滑剂产业互联网平台搭建的一些步骤和关键考虑因素&#xff1a; 确定平台的…

在KylinV10安装Dm8

前言 因为近期&#xff0c;业外和几个朋友想搞点有趣的项目玩玩&#xff0c;既然不以盈利为主&#xff0c;就> 主推国产化&#xff0c;所以这篇记录一下&#xff0c;我在KylinV10安装dm8.最近真的很忙&#xff0c;要负责专研一下国产化工具开发的事&#xff0c;还要负责tb级…

大数据之Hadoop集群资源管理器YARN

目录&#xff1a; 一、hadoop yarn 简介二、YARN架构三、YARN工作原理简述 一、hadoop yarn 简介 Apache YARN (Yet Another Resource Negotiator) 是 hadoop 2.0 引入的集群资源管理系统。用户可以将各种服务框架部署在 YARN 上&#xff0c;由 YARN 进行统一地管理和资源分配…

如何助力工厂实现从反应性维护到预测性维护?

技术正在重塑企业日常运营方式。技术的发展和变革促使工厂采用预测性维护&#xff0c;而不再采用被动&#xff08;直到故障发生后再进行修理&#xff09;的维护策略。 预测性维护利用多参数持续监测设备的健康状况和性能&#xff0c;通过预先建立的算法来预测设备何时会出现故障…

聚观早报|特斯拉向第三方电动车开放充电桩;Epic 诉苹果垄断败诉

今日要闻&#xff1a;特斯拉向第三方电动车开放充电桩&#xff1b;我国全面实现不动产统一登记&#xff1b;Epic 诉苹果垄断败诉&#xff1b;腾讯大股东Naspers再减持近79万股&#xff1b;星巴克中国门店将超过万家 特斯拉向第三方电动车开放充电桩 近日&#xff0c;特斯拉官方…

Django智能旅游推荐系统

背景 随着科学技术发展&#xff0c;电脑已成为人们生活中必不可少的生活办公工具&#xff0c;在这样的背景下&#xff0c;网络技术被应用到各个方面&#xff0c;为了提高办公生活效率&#xff0c;网络信息技术飞速发展。在这样的背景下人类社会进入了全新的信息化的时代。智能…

一篇文章搞懂OpenCV之图像特征

文章目录 一篇文章搞懂OpenCV之图像特征纹理特征形状特征哈里斯角检测Shi-Tomasi角点检测尺度不变特征变换算法 一篇文章搞懂OpenCV之图像特征 图像特征即图像中独特的&#xff0c;易于跟踪和比较的特定模板或特定结构&#xff0c;例如我们肉眼可见的颜色、形状、轮廓以及亮度…

线性结构的存储类型

线性结构的存储类型 顺序标&#xff1a;顺序标就是数组&#xff0c;也成为向量vector、高维向量及称为张量即tensor 链表&#xff1a;单链表、双链表、循环链表 线性表概念 表目、文件、索引、表的长度、空表 线性表由节点表和关系表组成二元组&#xff1b; 节点集由有限的…

微服务---微服务保护Sentinel基本使用

微服务保护 1.初识Sentinel 1.1.雪崩问题及解决方案 1.1.1.雪崩问题 微服务中&#xff0c;服务间调用关系错综复杂&#xff0c;一个微服务往往依赖于多个其它微服务。 如图&#xff0c;如果服务提供者I发生了故障&#xff0c;当前的应用的部分业务因为依赖于服务I&#xff…

计算机网路常见面试题(上)

计算机网络基础 # 网络分层模型 # OSI 七层模型是什么&#xff1f;每一层的作用是什么&#xff1f; OSI 七层模型 是国际标准化组织提出一个网络分层模型&#xff0c;其大体结构以及每一层提供的功能如下图所示&#xff1a; 每一层都专注做一件事情&#xff0c;并且每一层都…

SQL注入漏洞学习简记

SQL注入漏洞危害 id1 and 1 1-- id1 and 1 2-- id1 and 1 1-- id1 and 1 2-- 可以用来判断是字符型注入/数字型注入 id1 order by 3 -- id1 order by 4 -- 这些SQL注入语句中的 order by 子句用于对结果进行排序&#xff0c;而排序的字段编号是从 1 开始的。如果在 orde…

【论文导读】Causality Inspired Representation Learning for Domain Generalization

Causality Inspired Representation Learning for Domain Generalization 阅读笔记_1100dp的博客-CSDN博客Causality Inspired Representation Learning for Domain Generalization 阅读笔记https://blog.csdn.net/qq_44901656/article/details/127341310这一篇讲的不错&#x…

业内常用即时传输网盘

工具名称 业内常用即时传输网盘 功能简介 无需登录&#xff0c;短时间内有效&#xff0c;多用于传输小型敏感文件 外部链接 请见文内 内部网盘链接 在线站点&#xff0c;无网盘链接 使用说明 许多安全行内人士在团队内互传敏感文件时&#xff0c;为实现上传和下载文件…

【Hugging Face】Hugging Face 主要类和函数介绍

Hugging Face 主要类和函数介绍 Hugging face是什么&#xff1f;什么是自然语言处理&#xff1f;PipelineDatasetPipeline on GPUMetricsAutoClasses在本地保存和加载模型结论参考资料 本文旨在为初学者介绍Hugging Face的主要类和函数&#xff0c;包括Pipeline, Datasets, Met…

Python小姿势 - Python学习笔记:如何使用Python创建一个简单的计算器

Python学习笔记&#xff1a;如何使用Python创建一个简单的计算器 在本教程中&#xff0c;我们将学习如何使用Python创建一个简单的计算器。我们将学习如何使用Python的内置函数input()和print()&#xff0c;以及如何使用Python的运算符来完成这个项目。 首先&#xff0c;让我们…

HBase(1):简介

1 Hadoop 从 1970 年开始&#xff0c;大多数的公司数据存储和维护使用的是关系型数据库大数据技术出现后&#xff0c;很多拥有海量数据的公司开始选择像Hadoop的方式来存储海量数据Hadoop使用分布式文件系统HDFS来存储海量数据&#xff0c;并使用 MapReduce 来处理。Hadoop擅长…

全国计算机等级三级网络技术试卷详解(二)

请点击↑关注、收藏&#xff0c;本博客免费为你获取精彩知识分享&#xff01;有惊喜哟&#xff01;&#xff01; 1. 下列属于广域网QoS技术的是&#xff08;&#xff09; A) RSVP B) PSTN C) MSTP D) ISDN 属于广域网QoS技术的是RSVP。目前宽带城域网保证服务质量QoS要求…

SpringCould+Vue3-Element-Admin 登录接口,用户信息接口以及Token验证的实现【VegePig教育平台】

文章目录 一.SpringCouldVue3-Element-Admin 登录接口&#xff0c;用户信息接口以及Token验证的实现【VegePig教育平台】1.1 背景1.2 数据库 二、登录接口及其Token实现2.1 前端2.2 后端2.2.1 控制层2.2.2 service层2.2.3 工具类&#xff1a;CreateJwt2.2.4 Dao-Mapper 三、用户…