当前位置: 首页 > news >正文

React 入门 - 01

本章内容

目录

    • 1. 简介
      • 1.1 初始 React
      • 1.2 React 相关技术点
      • 1.3 React.js vs Vue.js
    • 2. React 开发环境准备
      • 2.1 关于脚手架工具
      • 2.2 create-react-app 构建一个 React 项目工程

1. 简介

1.1 初始 React

React JS 是 Facebook 在 2013年5月开源的一款前端框架,其带来一种全新的“函数式”编程风格,迄今为止,有着健全的文档和完善的社区。

React16 和之后的版本,称之为 “React Fiber”,其性能和便捷度上都得到了极大的提升。在 React 的使用中,我们会看到全球范围内的开发者解决统一问题时的不同解决方案。

官网地址
中文官方网站

1.2 React 相关技术点

  • React JS: 使用 React 的语法来编写一些网页&交互行为
  • React Native: 使用 React 语法编写原生 APP 应用
  • React VR/ React 360: 在 React 的语法基础上,开发一些 VR/全景应用

1.3 React.js vs Vue.js

React.js 相比于 Vue.js,其灵活性更加强,所以在处理一些复杂的业务时,技术方案的选型上更加丰富。Vue.js 提供了丰富的 API,实现功能会更加简单,但灵活性会有所限制。
因此,一般复杂度较高的项目采用 React.js ,而面向用户端、复杂度不高时可选用 Vue.js

2. React 开发环境准备

使用 React 编码,一般有两种方式

  • 方式一(不推荐):直接使用 <script>标签引入相关的 React 文件。如果项目比较庞大,可以对 js 文件进行拆分,拆分后的文件使用 script 标签进行引入。这是一种比较古老的方式,性能可能很低,可维护性也比较差。

  • 方式二(推荐):使用“脚手架”工具进行工程搭建。常用的有 React 官方提供的 create-react-app 或者 vite

2.1 关于脚手架工具

“脚手架”本质上是前端开发过程中的辅助工具,可以使用它来构建一个完整项目的开发流程和目录。内部允许我们使用一定的方式去互相引用 js 文件。再通过其编译,产生的代码可以直接被浏览器识别运行。

“脚手架”的编写可以使用 Grunt 、Glup、Webpack、Vite 等工具。

初学 React 时,可以使用 React 官方提供的脚手架-- create-react-app。

2.2 create-react-app 构建一个 React 项目工程

  • 确认你已经安装了 node
  • 安装 create-react-app 脚手架(如果没有按此步骤安装,可直接按照官网步骤进行构建项目)
npm install create-react-app -g
  • 打开终端,输入命令,等待目录自动创建,创建后启动项目,使用浏览器打开相应地址
create-react-app react-democd react-demo
npm start

在这里插入图片描述
在这里插入图片描述

到此,本章内容结束!

相关文章:

React 入门 - 01

本章内容 目录 1. 简介1.1 初始 React1.2 React 相关技术点1.3 React.js vs Vue.js 2. React 开发环境准备2.1 关于脚手架工具2.2 create-react-app 构建一个 React 项目工程 1. 简介 1.1 初始 React React JS 是 Facebook 在 2013年5月开源的一款前端框架&#xff0c;其带来…...

Windows Server 2019 Standard 和 Datacenter 版本差异比较

文章目录 正式版本的通用功能差异锁定和限制差异服务器角色差异可用功能差异Windows 2019 ISO下载推荐阅读 在测试hyper-V的过程中&#xff0c;计划安装一个Windows 2019的OS&#xff0c;顺便了解Windows Server 2019 的 Standard 和 Datacenter 版本有哪些差异&#xff1f;我们…...

计算机网络的交通灯:停止-等待协议

停止-等待协议是一种在计算机网络通信中常用的协议&#xff0c;用于在数据传输过程中进行流量控制。它的核心思想是在发送端发送数据后&#xff0c;等待接收端的确认信号&#xff0c;确保数据的可靠传输。本文将深入探讨停止-等待协议的原理、优缺点以及在实际应用中的局限性。…...

命令行模式的rancher如何安装?

在学习kubectl操作的时候&#xff0c;发现rancher也有命令行模式&#xff0c;学习整理记录此文。 说明 rancher 命令是 Rancher 平台提供的命令行工具&#xff0c;用于管理 Rancher 平台及其服务。 前提 已经参照前文安装过了rancher环境了&#xff0c;拥有了自己的k8s集群…...

苍穹外卖Day01——总结1

总结1 1. 软件开发整体介绍1.1 软件开发流程1.2 角色分工1.3 软件环境 2. 苍穹外卖项目介绍2.1 项目介绍2.2 技术选项 3. Swagger4. 补充内容&#xff08;待解决...&#xff09; 1. 软件开发整体介绍 1.1 软件开发流程 1.2 角色分工 从角色分工里面就可以查看自己以后从事哪一…...

Java 基础(二)

数组 数组就是一个容器&#xff0c;用来存一批同类型的数据 数组关键要素&#xff1a;定义及初始化、元素访问和元素遍历 1.静态初始化数组 // 完整格式 数据类型[] 数组名 new 数据类型[]{元素1&#xff0c;元素2 &#xff0c;元素3… };// 简化格式数据类型[] 数组名 …...

BERT 模型是什么

科学突破很少发生在真空中。相反&#xff0c;它们往往是建立在积累的人类知识之上的阶梯的倒数第二步。要了解 ChatGPT 和 Google Bart 等大型语言模型 &#xff08;LLM&#xff09; 的成功&#xff0c;我们需要回到过去并谈论 BERT。 BERT 由 Google 研究人员于 2018 年开发&…...

Elasticsearch中object类型与nested类型以及数组之间的区别

一、区别&#xff1a; 0、一般情况下用object 类型来查es中为json对象的字段数据&#xff0c;用nested来查es中为JsonArray数组类型的字段数据。 1、默认情况下ES会把JSON对象直接映射为object类型&#xff0c;只有手动设置才会映射为nested类型 2、object类型可以直接使用普…...

办公文档,私人专用

一、安装Minio 1.1、创建文件夹&#xff0c;并在指定文件夹中下载minio文件 cd /opt mkdir minio cd minio touch minio.log wget https://dl.minio.io/server/minio/release/linux-amd64/minio1.2、赋予minio文件执行权限 chmod 777 minio1.3、启动minio ./minio server /…...

linux 使用log4cpp记录项目日志

为什么要用log4cpp记录项目日志 在通常情况下&#xff0c;Linux/UNIX 每个程序在开始运行的时刻&#xff0c;都会打开 3 个已经打开的 stream. 分别用来输入&#xff0c;输出&#xff0c;打印错误信息。通常他们会被连接到用户终端。这 3 个句柄的类型为指向 FILE 的指针。可以…...

Kafka集群部署

文章目录 一、实例配置二 、zookeeper集群安装三、kafka集群安装四、验证 没有提示&#xff0c;所有机器都执行 在kafka集群中引入zookeeper&#xff0c;主要是为了管理kafka集群的broker。负责管理集群的元数据信息&#xff0c;确保 Kafka 集群的高可用性、高性能和高可靠性。…...

软件测试|深入理解SQL CROSS JOIN:交叉连接

简介 在SQL查询中&#xff0c;CROSS JOIN是一种用于从两个或多个表中获取所有可能组合的连接方式。它不依赖于任何关联条件&#xff0c;而是返回两个表中的每一行与另一个表中的每一行的所有组合。CROSS JOIN可以用于生成笛卡尔积&#xff0c;它在某些情况下非常有用&#xff…...

数据权限-模型简要分析

权限管控可以通俗的理解为权力限制&#xff0c;即不同的人由于拥有不同权力&#xff0c;他所看到的、能使用的可能不一样。对应到一个应用系统&#xff0c;其实就是一个用户可能拥有不同的数据权限&#xff08;看到的&#xff09;和操作权限&#xff08;使用的&#xff09;。 …...

echarts柱状图加单位,底部文本溢出展示

刚开始设置了半天都不展示单位&#xff0c;后来发现是被挡住了&#xff0c;需要调高top值 // 基于准备好的dom&#xff0c;初始化echarts实例var myChart echarts.init(document.getElementById("echartD"));rankOption {// backgroundColor: #00265f,tooltip: {…...

x-cmd pkg | gh - GitHub 官方 CLI

目录 简介首次用户功能特点与 x-cmd gh 模块的关系相关作品进一步探索 简介 gh&#xff0c;是由 GitHub 官方使用 Go 语言开发和维护的命令行工具&#xff0c;旨在脚本或是命令行中便捷管理和操作 GitHub 的工作流程。 注意: 由于 x-cmd 提供了同名模块&#xff0c;因此使用官…...

Python解析XML,简化复杂数据操作的最佳工具!

更多Python学习内容&#xff1a;ipengtao.com XML&#xff08;可扩展标记语言&#xff09;是一种常见的文本文件格式&#xff0c;用于存储和交换数据。Python提供了多种库和模块&#xff0c;用于解析和操作XML文件。本文将深入探讨如何使用Python操作XML文件&#xff0c;包括XM…...

rpm数据库被破坏,无法使用yum

转载说明&#xff1a;如果您喜欢这篇文章并打算转载它&#xff0c;请私信作者取得授权。感谢您喜爱本文&#xff0c;请文明转载&#xff0c;谢谢。 问题描述&#xff1a; 云服务器在安装了开源的HIDS插件后&#xff0c;发现安装了插件的服务器全部突然无法正常使用yum安装软件…...

国标GB28181视频监控EasyCVR平台:视频集中录制存储/云端录像功能及操作介绍

安防视频监控系统EasyCVR视频综合管理平台&#xff0c;采用了开放式的网络结构&#xff0c;可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;同时还具备权限管理、设…...

Wargames与bash知识11

Wargames与bash知识11 bandit19 关卡提示&#xff1a; 要获得对下一级别的访问权限&#xff0c;您应该使用家目录中的setuid二进制文件。在不带参数的情况下执行它&#xff0c;以了解如何使用。在使用setuid二进制文件后&#xff0c;可以在通常的位置&#xff08;/etc/bandit…...

Python 基础(一):基本语句

目录 1 条件语句2 循环语句2.1 for 循环2.2 while 循环2.3 break2.4 continue 3 pass 语句 1 条件语句 在进行逻辑判断时&#xff0c;我们需要用到条件语句&#xff0c;Python 提供了 if、elif、else 来进行逻辑判断。格式如下所示&#xff1a; if 判断条件1:执行语句1... el…...

Hibernate实战之操作MySQL数据库(2024-1-8)

Hibernate实战之操作MySQL数据库 2024.1.8 前提环境&#xff08;JavaMySQLNavicatVS Code&#xff09;1、Hibernate简介1.1 了解HQL 2、MySQL数据库建表2.1 编写SQL脚本2.2 MySQL执行脚本 3、Java操作MySQL实例&#xff08;Hibernate&#xff09;3.1 准备依赖的第三方jar包3.2 …...

【Spring Boot 3】【数据源】自定义JDBC多数据源

【Spring Boot 3】【数据源】自定义JDBC多数据源 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术…...

番茄工作法

番茄工作法是一种时间管理方法&#xff0c;主要适用于专注工作。它的基本步骤包括&#xff1a; 设定一个25分钟的闹钟。默念三二一&#xff08;321法则&#xff09;&#xff0c;开始全身心投入工作。用专注的状态高效工作25分钟&#xff0c;不允许走神。如果做到了步骤3&#…...

【uniapp】调用阿里云OCR图片识别文字:

文章目录 一、效果&#xff1a;二、实现&#xff1a; 一、效果&#xff1a; 二、实现&#xff1a; 【阿里官方】高精版OCR文字识别【最新版】-云市场-阿里云 <template><view class"container"><!-- 选择图片 --><button click"imageO…...

软考高级选择考哪个好?

&#x1f4d2;软考高级总共5个科目&#xff0c;同样是高级证书&#xff0c;认可度也有区别! 大家一般在「信息系统项目管理师」✔️和「系统架构设计师」✔️二选一 1️⃣信息系统项目管理师 ❤️信息系统项目管理师也叫「高项」&#xff0c;考试内容主要是「项目管理」相关&am…...

在云服务器ECS上用Python写一个搜索引擎

在云服务器ECS上用Python写一个搜索引擎 一、场景介绍二、搜索引擎的组成2.1 网页的爬取及排序2.2 用户使用搜索引擎进行搜索 三、操作步骤3.1 环境准备3.2 安装Anaconda3.3 安装Streamlit3.4 下载搜索引擎代码3.5 运行搜索引擎 四、常见问题4.1 运行setup.py时可能的问题4.2 如…...

Python在智能手机芯片研发

Python在智能手机芯片研发中扮演着重要的角色。以下是几个方面的重要性&#xff1a; 快速原型设计&#xff1a;Python具有简洁易读的语法和丰富的第三方库&#xff0c;使工程师能够快速构建原型和进行快速迭代。这对于芯片研发来说&#xff0c;可以加快开发速度&#xff0c;减少…...

K8S学习指南(70)-K8S中的informa机制

引言 在 Kubernetes 集群中&#xff0c;Informer 是一种重要的机制&#xff0c;用于监控和处理集群中资源对象的变化。它是基于观察者模式设计的&#xff0c;允许开发者注册对某类资源对象的关注&#xff0c;并在对象发生变化时得到通知。本文将深入介绍 Kubernetes 中的 Info…...

「MCU」SD NAND芯片之国产新选择优秀

文章目录 前言 传统SD卡和可贴片SD卡 传统SD卡 可贴片SD卡 实际使用 总结 前言 随着目前时代的快速发展&#xff0c;即使是使用MCU的项目上也经常有大数据存储的需求。可以看到经常有小伙伴这样提问&#xff1a; 大家好&#xff0c;请问有没有SD卡芯片&#xff0c;可以…...

【QML COOK】- 002-添加一个图片

1. 编辑main.qml import QtQuickWindow {width: 800height: 800visible: truetitle: qsTr("Hello World")Image {anchors.fill: parentsource: "qrc:/Resources/Images/arrow.png"} }将Window的width和height都改成800&#xff0c;因为我们要添加的图片大…...

net和cn哪个做网站好/北京seo收费

一、io_service的作用 io_servie 实现了一个任务队列&#xff0c;这里的任务就是void(void)的函数。Io_servie最常用的两个接口是post和run&#xff0c;post向任务队列中投递任务&#xff0c;run是执行队列中的任务&#xff0c;直到全部执行完毕&#xff0c;并且run可以被N个线…...

wordpress修改favicon/seo平台有哪些

文章目录目标优先二分类问题的评价指标第一类错误和第二类错误非均匀数据集混淆矩阵、正确率、精确率、召回率和f-score不知道标签均匀性的情况精度-召回曲线和ROC曲线精度-召回曲线&#xff08; precision-recall curve&#xff09;ROC和AUC截至目前为止&#xff0c; 我们都一…...

页面设计风格/seo整站优化系统

回文 回文串就是一个正读和反读都一样的字符串&#xff0c;比如“level”或者“noon”等等就是回文串。 code(Java) …...

wordpress后台中文/太原网站推广排名

最新Linux自动化运维系列④ Shell高级脚本自动化编程实战798资源网免责声明&#xff1a;[ 最新Linux自动化运维系列④ Shell高级脚本自动化编程实战 ] 由分享人 一只***57 于 2019-07-08 08:47 上传到百度网盘。此页面由蜘蛛程序自动抓取&#xff0c;以非人工方式自动生成&…...

seo整站如何优化/零基础seo入门教学

5902. 检查句子中的数字是否递增 句子是由若干 token 组成的一个列表&#xff0c;token 间用 单个 空格分隔&#xff0c;句子没有前导或尾随空格。每个 token 要么是一个由数字 0-9 组成的不含前导零的 正整数 &#xff0c;要么是一个由小写英文字母组成的 单词 。 示例&…...

wordpress添加账户余额/谷歌账号注册入口官网

Spring Boot 热部署 实际开发中&#xff0c;修改某个页面数据或逻辑功能都需要重启应用。这无形中降低了开发效率&#xff0c;所以使用热部署是十分必要的。 什么是热部署&#xff1f; 应用启动后会把编译好的Class文件加载的虚拟机中&#xff0c;正常情况下在项目修改了源文件…...