位置: IT常识 - 正文

【react从入门到精通】初识React(react 入门教程)

编辑:rootadmin
【react从入门到精通】初识React 文章目录前言React技能树什么是 React?安装和配置 React创建 React 组件渲染 React 组件使用 JSX传递属性(Props)处理组件状态(State)处理用户输入(事件处理)组合和嵌套组件写在最后

推荐整理分享【react从入门到精通】初识React(react 入门教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:react入门到精通,react快速入门,react 入门,react教程,看这篇就够了,react从入门到精通,react教程,看这篇就够了,react快速入门,react从入门到精通,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

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

React技能树React 技能树├── JSX│ ├── 语法│ ├── 元素渲染│ ├── 组件│ ├── Props│ ├── State│ └── 生命周期├── 组件通信│ ├── 父子组件通信│ ├── 兄弟组件通信│ ├── 跨级组件通信│ ├── Context│ └── Redux├── 样式│ ├── 内联样式│ ├── CSS Modules│ └── Styled Components├── 路由│ ├── React Router│ ├── 动态路由│ └── 嵌套路由├── 数据请求│ ├── Axios│ ├── Fetch│ └── GraphQL├── 状态管理│ ├── Redux│ ├── MobX│ └── Recoil├── 常用库和框架│ ├── Ant Design│ ├── Material UI│ ├── Bootstrap│ ├── Semantic UI│ └── Tailwind CSS├── 测试│ ├── Jest│ ├── Enzyme│ └── React Testing Library├── 构建工具│ ├── Webpack│ └── Parcel└── 服务端渲染 ├── Next.js └── Gatsby什么是 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'));【react从入门到精通】初识React(react 入门教程)

这将把 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> )}写在最后✨原创不易,希望各位大佬多多支持。👍点赞,你的认可是我创作的动力。⭐️收藏,感谢你对本文的喜欢。✏️评论,你的反馈是我进步的财富。
本文链接地址:https://www.jiuchutong.com/zhishi/300393.html 转载请保留说明!

上一篇:【微信小程序】条件渲染和列表渲染(微信小程序开发)

下一篇:群智能优化计算中的混沌映射(智能优化算法可以用到哪里)

  • 萤石摄像头被别人绑定了怎么解绑(萤石摄像头被别人添加)

    萤石摄像头被别人绑定了怎么解绑(萤石摄像头被别人添加)

  • microsoftstore是什么意思

    microsoftstore是什么意思

  • qq课堂怎么缩小窗口(qq课堂怎么缩小窗口自动退出)

    qq课堂怎么缩小窗口(qq课堂怎么缩小窗口自动退出)

  • 苹果手机抖音看直播怎么关弹幕(苹果手机抖音看直播切换出去没声音)

    苹果手机抖音看直播怎么关弹幕(苹果手机抖音看直播切换出去没声音)

  • 腾讯大王卡免流量范围(腾讯大王卡免流量列表)

    腾讯大王卡免流量范围(腾讯大王卡免流量列表)

  • 微信注销了还能查到聊天记录吗(微信注销了还能恢复吗)

    微信注销了还能查到聊天记录吗(微信注销了还能恢复吗)

  • 钉钉能看到谁点赞吗(钉钉上能看到谁看过我吗)

    钉钉能看到谁点赞吗(钉钉上能看到谁看过我吗)

  • 抖音直播注意哪些事项(抖音直播注意哪些方面)

    抖音直播注意哪些事项(抖音直播注意哪些方面)

  • 爱奇艺为什么下载不了电影(爱奇艺为什么下载的视频看不了)

    爱奇艺为什么下载不了电影(爱奇艺为什么下载的视频看不了)

  • 华为p30用京东方屏吗(华为京东方屏幕怎么办)

    华为p30用京东方屏吗(华为京东方屏幕怎么办)

  • 苹果手机下载的软件未受信任怎么办(苹果手机下载的音乐在哪个文件夹)

    苹果手机下载的软件未受信任怎么办(苹果手机下载的音乐在哪个文件夹)

  • 手机呼叫转移怎么回事(手机呼叫转移怎么设置回来)

    手机呼叫转移怎么回事(手机呼叫转移怎么设置回来)

  • 华为mate30充电器型号(华为mate30充电器能用66w或100w的吗)

    华为mate30充电器型号(华为mate30充电器能用66w或100w的吗)

  • 扣扣闪照销毁了怎么看(qq闪照销毁了)

    扣扣闪照销毁了怎么看(qq闪照销毁了)

  • 苹果改密码怎么改(苹果改密码怎么设置验证)

    苹果改密码怎么改(苹果改密码怎么设置验证)

  • vanke是什么牌子(vankyo是什么牌子)

    vanke是什么牌子(vankyo是什么牌子)

  • 皮皮搞笑怎么去水印(皮皮搞笑怎么去掉IP地址)

    皮皮搞笑怎么去水印(皮皮搞笑怎么去掉IP地址)

  • 小米mix2s打电话黑屏(小米mix2s打电话别人听不见)

    小米mix2s打电话黑屏(小米mix2s打电话别人听不见)

  • IDEA使用vue的安装与配置(详细教程)(idea安装vue.js)

    IDEA使用vue的安装与配置(详细教程)(idea安装vue.js)

  • photo-sphere-viewer中文文档

    photo-sphere-viewer中文文档

  • node.js安装及环境配置(保姆级)(nodejs安装及环境配置vue)

    node.js安装及环境配置(保姆级)(nodejs安装及环境配置vue)

  • 为在线客服系统接入chatGPT(四):chatGPT接口vue网页版,可以联系上下文语境,可以实现自己的chatGPT,附代码(在线客服系统登录)

    为在线客服系统接入chatGPT(四):chatGPT接口vue网页版,可以联系上下文语境,可以实现自己的chatGPT,附代码(在线客服系统登录)

  • 出租房怎么算平方多少
  • 发票开具,发票备注栏能手写字吗?
  • 其他个人出租房屋按照多少征收应纳税额
  • 付款方和发票抬头不一致如何账务处理
  • 工会可以现金支付吗
  • 缓交的社保费,包括个人部分
  • 更改增值税申报表有退税会很麻烦吗
  • 年终奖计入工伤赔偿
  • 增值税扣费
  • 个人转款到对公账户会计分录
  • 出口抵减内销产品
  • 待认证进项税额是什么情况下用的
  • 可以做投标保证金的有银行汇票银行保函
  • 企业分立账务处理办法
  • 企业合并无形资产摊销
  • 苹果电脑截图快捷键
  • 各类预算的内容及其相互关系
  • 调整以前年度的收入怎么入账
  • 企业收缩案例
  • 科普笔记本电脑怎样
  • 事业单位收到拨款怎么办
  • macos big sur值得升级吗
  • 若依框架好用吗
  • 支付报刊杂志费
  • php fpm原理
  • 涉及产权的案例
  • 资产减值准则所规范的资产
  • 合同负债和预收负债的区别
  • 网上打印企业征信流程
  • 工会经费是按应发工资还是实发工资申报
  • 数字图像处理-应用篇
  • rc远程桌面
  • 升级到miui14感觉耗电快了
  • Joe是一款优雅功能强大的Typecho主题功能多上手快
  • 农产品收购发票是普票还是专票
  • 应收账款贷款怎么做
  • 财务报表季报应付职工薪酬是指三个月工资累计还是
  • 公司给员工的福利语句
  • java printing
  • 环保税的纳税义务人是施工方还是建设方安徽
  • 2021增值税发票怎么开步骤
  • 债权人豁免债务的账务处理会计分录
  • SQLServer 2008 Merge语句的OUTPUT功能
  • sql server row_number over
  • 短期借款利息怎么做账
  • 商业一般纳税人辅导期截止时间
  • sql 临时表格
  • 嵌入式软件产品应纳税额
  • 费用利润率计算公式是怎样的?
  • 小企业会计制度废止
  • 可供出售金融资产可以转为交易性金融资产吗
  • 排污费主要用于哪些方面
  • 临建费用包含在哪里
  • mysql建唯一索引
  • myeclipse连接mysql失败
  • win8系统手机
  • win7修改系统版本
  • win8系统怎么远程电脑
  • 出现闪退该怎么办
  • xp软件自动启动
  • tdxcef.exe进程
  • hppusg.exe
  • linux无法登陆
  • linux mv命令的用法
  • 请问菜单
  • cocos2dx键盘控制移动
  • 如何使用maven
  • 详细解读了
  • [置顶]津鱼.我爱你
  • shell删除指定内容
  • 用yum安装samba
  • jQuery实现HTML表格单元格的合并功能
  • jquery对话框组件
  • python3 functools
  • 山西国家税务总局官网
  • 减免所得税额怎么计算出来的
  • 处级工作调动用什么手续
  • 手撕发票查询真伪平台
  • 国税局内设机构
  • 契税有发票吗,还是纳税证明
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设