react基本使用

news2025/1/12 12:21:42

react基本使用

  • 1.基础知识
    • 1.1 React 介绍
    • 1.2 React特点
      • 声明式UI
      • 组件化
      • 学习一次,随处使用
  • 2.基本使用
    • 2.1 React 脚手架(CLI)
      • 使用 React 脚手架创建项目
      • 项目目录结构说明和调整
    • 2.2 使用React 的基本步骤
      • 2.2.1 导入react和react-dom
      • 2.2.2 创建react元素(虚拟DOM)
      • 2.2.3 渲染react元素到页面中

1.基础知识

1.1 React 介绍

react是一个用于构建用户界面的 JavaScript 库

react官网(https://reactjs.org/)

react中文网(https://zh-hans.reactjs.org/)

  • React 是一个用于构建用户界面的 JavaScript 库

  • 如果从mvc的角度来看,React仅仅是视图层(V)的解决方案。也就是只负责视图的渲染,并非提供了完整了M和C的功能

  • react/react-dom/react-router/redux: 框架

  • React 起源于 Facebook 内部项目(News Feed,2011),后又用来架设 Instagram 的网站(2012),并于 2013 年 5 月开源react介绍

  • React 是最流行的前端开发框架之一,其他:Vue、Angular 等等[框架对比](

1.2 React特点

声明式UI

你只需要描述UI(HTML)看起来是什么样的,就跟写HTML一样

const jsx = <div className="app">
    <h1>Hello React! 动态数据变化:{count}</h1>
</div>

声明式对应的是命令式,声明式关注的是what,命令式关注的是how

组件化

  • 组件是react中最重要的内容
  • 组件用于表示页面中的部分内容
  • 组合、复用多个组件,就可以实现完整的页面功能

学习一次,随处使用

  • 使用react/rect-dom可以开发Web应用
  • 使用react/react-native可以开发移动端原生应用(react-native) RN 安卓 和 ios应用 flutter
  • 使用react可以开发VR(虚拟现实)应用(react360)

2.基本使用

2.1 React 脚手架(CLI)

使用 React 脚手架创建项目

  • 命令:npx create-react-app react-basic
    • npx create-react-app 是固定命令,create-react-app 是 React 脚手架的名称
    • react-basic 表示项目名称,可以修改
  • 启动项目:yarn start or npm start
  • npx 是 npm v5.2 版本新添加的命令,用来简化 npm 中工具包的使用
    • 原始:1 全局安装npm i -g create-react-app 2 在通过脚手架的命令来创建 React 项目
    • 现在:npx 调用最新的 create-react-app 直接创建 React 项目

能够使用react脚手架

  • yarn global add create-react-app

项目目录结构说明和调整

  • 说明:
    • src 目录是我们写代码进行项目开发的目录
    • 查看 package.json 两个核心库:reactreact-dom(脚手架已经帮我们安装好,我们直接用即可)
  • 调整:
    1. 删除 src 目录下的所有文件
    2. 创建 index.js 文件作为项目的入口文件,在这个文件中写 React 代码即可

2.2 使用React 的基本步骤

2.2.1 导入react和react-dom

// 导入react和react-dom
import React from 'react'
import ReactDOM from 'react-dom'

2.2.2 创建react元素(虚拟DOM)

// 创建元素
//参数1:标签的名字 h1 p div
//参数2:标签的属性 对象
//参数3:标签的内容
const title = React.createElement('h1', null, 'hello react')

2.2.3 渲染react元素到页面中

// 渲染react元素
//参数1:渲染的react元素
//参数2:需要渲染到哪个容器中
ReactDOM.render(title, document.getElementById('root'))

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

2023风丘内推计划——“你的同事 你来挑”

招 聘 简 章 &#xff08;一&#xff09;企业文化 愿 景&#xff1a;让科技更简单 使 命&#xff1a;为客户创造更多价值&#xff1b;为员工创造更多机会&#xff1b;为社会贡献更多美好&#xff01; 价值观&#xff1a;诚信敬业、持续创新、团队合作、追求卓越、勇担…

Redis高可用之集群架构(第三部分)

引言 集群的实际环境模拟可以参考我之前的文章 单机模拟集群&#xff08;三主两从&#xff09; 一、集群的工作原理 集群中的节点只能使用0号数据库&#xff0c;而单机数据库没有这个限制。集群中的节点本质上就是一个运行在集群模式下的Redis服务器&#xff0c;Redis服务器在…

【endnote学习】为什么引用文献时期刊名没有显示为缩写名形式

为什么引用文献时期刊名没有显示为缩写名形式问题描述问题解决问题描述 在引用文献时&#xff0c;发现有个别文献引用信息中期刊名没有显示为缩写形式。比如(选择显示格式为AIChE): 引用信息里&#xff0c;期刊名“Physical review B”没有自动显示为缩写名。 出现这种情况有…

c++算法基础必刷题目——前缀和与差分

文章目录前缀和与差分算法&#xff1a;1、校门外的树2、值周3、中位数图4、激光炸弹5、二分6、货仓选址前缀和与差分算法&#xff1a; 前缀和与差分算法主要是为了快速求出某个区间的和&#xff0c;例如有一个数组a[10]{0&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;4…

unity编辑器窗口介绍

Hierarchy 摆放了unity游戏中使用的节点。 Scene 场景编辑视图&#xff0c;经常用到。 栅格 场景编辑视图中&#xff0c;有一些栅格&#xff0c;用下面这个就可以控制是否展示栅格。 天空盒&#xff08;skybox&#xff09; 天空一片蓝色&#xff0c;也是因为初始创建了蓝色的…

【聆思CSK6 视觉AI开发套件试用】AI Demo试用

本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;kings669669 AI套件外观 环境搭建 按照官网手册&#xff0c;我在Windows环境下遇到一些问题&#xff0c;在这里给出我的一些解决办法。不知道…

端到端数据战略,亚马逊云科技为数据服务带来了什么?

大约十年前&#xff0c;维克托舍恩伯格在《大数据时代》一书中直言&#xff1a;世界的本质是数据&#xff0c;大数据将开启一次重大的时代转型。 十年之后&#xff0c;维克托舍恩伯格的预言逐渐成真。全球数字经济近年来的蓬勃发展&#xff0c;推动了各行各业的加速转型。如今…

生成对抗:少样本学习

GAN:少样本学习 任何深度学习模型要获得较好结果往往需要大量的训练数据。但是&#xff0c;高质量的数据往往是稀缺的和昂贵的。好消息是&#xff0c;自从GANs问世以来&#xff0c;这个问题得到妥善解决&#xff0c;我们可以通过GAN来生成高质量的合成数据样本帮助模型训练。通…

vue 使用 PDF.js 浏览pdf文件

学习关键语句: 使用 PDF.js 在网页浏览pdf vue 使用 PDF.js vue 浏览pdf文件 写在前面 很头大 , 本来网络实际地址的 pdf 文件直接放在 iframe 的 src 中就可以浏览 pdf 文件的 , 但是对于虚拟地址来说 , 这样子只会让网页当场开始下载 pdf 文件到本地 , 而并不能在网页上浏览…

C规范编辑笔记(九)

往期文章&#xff1a; C规范编辑笔记(一) C规范编辑笔记(二) C规范编辑笔记(三) C规范编辑笔记(四) C规范编辑笔记(五) C规范编辑笔记(六) C规范编辑笔记(七) C规范编辑笔记(八) 正文&#xff1a; 今天我们来分享一下C规范编辑笔记第九篇&#xff0c;话不多说&#xff0c;我…

【聆思CSK6 视觉AI开发套件试用】初体验

本篇文章来自极术社区与聆思科技组织的CSK6 视觉AI开发套件活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;米樂 非常幸运能有评测这次的CSK6的机会。记录使用该套件进行开发的过程和感受。 套件介绍 CSK6是聆思科技推出的一款MCUDSPNPU的SoC芯片 套件…

免费pdf合并在线,这几个神仙网站请收好

对于经常要处理PDF文档的人来说&#xff0c;pdf合并如今已经是很常见的需求了。但是这个操作对一般人来说还有点难度&#xff0c;因此很多人都在寻找好用的免费pdf合并在线网站。今天小编就为大家吐血整理了工作几年来遇到的几个免费pdf合并在线的神仙网站。 1. Pdfio 这是一…

网络故障分析助您高效网上办公(一)

前言 信息中心负责人表示&#xff0c;有用户反馈&#xff0c;在通过VPN访问某一IP的80端口时连接时断时续。同时信息中心给到的信息是通过VPN&#xff1a;XXX.XXX.253.5访问IP地址XXX.XXX.130.200的80端口出现访问时断时续问题。 需要通过分析系统看一下实际情况&#xff0c;…

【Linux修炼】11.进程的创建、终止、等待、程序替换

每一个不曾起舞的日子&#xff0c;都是对生命的辜负。 进程的创建、终止、等待、程序替换本节重点1. 进程的创建1.1 fork函数初识1.2 fork的返回值问题1.3 写时拷贝1.4 创建多个进程2. 进程终止2.1 进程退出码2.2 进程如何退出3. 进程等待3.1 进程等待的原因3.2 进程等待的方法…

Uboot中的DM驱动模型

这一篇我们学习uboot中的驱动模型的初始化&#xff0c;在uboot中&#xff0c;驱动模型被称为Driver Model&#xff0c;简称DM。这种驱动模型为uboot中的各类驱动提供了统一的接口。 1. 数据结构及概念 DM模型主要依赖于下面四种数据结构&#xff1a; udevice&#xff0c;具有…

MySQL数据库闭包 Closure Table 表实现

1、 数据库闭包表简介 像MySQL这样的关系型数据库&#xff0c;比较适合存储一些类似表格的扁平化数据&#xff0c;但是遇到像树形结构这样有深度的数据&#xff0c;就很难驾驭了。 针对这种场景&#xff0c;闭包表&#xff08;Closure Table &#xff09;是最通用的设计&…

面试官:系统需求多变时如何设计?

面试官&#xff1a;我想问个问题哈&#xff0c;项目里比较常见的问题 面试官&#xff1a;我现在有个系统会根据请求的入参&#xff0c;做出不同动作。但是&#xff0c;这块不同的动作很有可能是会发生需求变动的&#xff0c;这块系统你会怎么样设计&#xff1f; 面试官&#…

FFmpeg简单使用:视频编码 ---- YUV转H264

基本流程 从本地读取YUV数据编码为h264格式的数据&#xff0c;然后再存⼊到本地&#xff0c;编码后的数据有带startcode。 与FFmpeg 示例⾳频编码的流程基本⼀致。 函数说明&#xff1a;avcodec_find_encoder_by_name&#xff1a;根据指定的编码器名称查找注册的编码器。 av…

第二十九章 数论——中国剩余定理与线性同余方程组

第二十九章 数论——中国剩余定理与线性同余方程组一、中国剩余定理1、作用&#xff1a;2、内容&#xff1a;3、证明&#xff1a;&#xff08;1&#xff09;逆元的存在性&#xff08;2&#xff09;验证定理的正确性4、代码实现&#xff1a;&#xff08;1&#xff09;步骤&#…

国产操作系统openEuler22.03配置yum源

作者&#xff1a;IT圈黎俊杰 本文选用的操作系统版本是openEuler22.03-LTS。openEuler是指操作系统的品牌英文名&#xff0c;中文名叫“欧拉”&#xff1b;22.03是指版本号&#xff08;openEuler以年月为版本号&#xff0c;22.03表示2022年03月发布的版本&#xff09;&#xff…