女排世界杯_1966世界杯 - ezrjnk120.com

React 入门 - 学习 Web 开发

2025-07-05 06:17:30

React 入门 上一页 概述:JavaScript 客户端和函数库 下一页

本文会引导我们进入一段 React 学习之旅。我们将逐步了解有关它的背景和用例的一些细节,在自己的电脑上建起基本的 React 工具链,创建并使用一个简单的入门应用程序,以学习一些关于 React 在此过程中如何工作的知识。

前提:

熟悉核心 HTML,CSS

和 JavaScript 语言,了解终端/命令行。

React 使用称为 JSX(JavaScript 和 XML)的 HTML-in-JavaScript

语法。熟悉 HTML 和 JavaScript 可以帮助你学习

JSX,并更好地确定应用程序中的错误是与 JavaScript 还是与 React

的更特定领域相关。

目标:

要设置本地 React 开发环境,创建一个启动应用程序,并了解其工作原理

你好 React如其官方口号所示,React 是一个用于构建用户界面的库。React 不是一个框架——它的应用甚至不局限于 Web 开发,它可以与其他库一起使用以渲染到特定环境。例如,React Native 可用于构建移动应用程序;React 360 可用于构建虚拟现实应用程序……

为了构建 Web 应用,开发人员将 React 与 ReactDOM 结合使用。React 和 ReactDOM 通常被与其他真正的 Web 开发框架相提并论,并用于解决相同的问题。当我们将 React 称为“框架”时,就是在进行口语化的理解。

React 的主要目标是最大程度地减少开发人员构建 UI 时发生的错误。它通过使用组件——描述部分用户界面的、自包含的逻辑代码段——来实现此目的。这些组件可以组合在一起以创建完整的 UI,React 将许多渲染工作进行抽象化,使你可以专注于 UI 设计 (译者注:显而易见,此设计不等于视觉稿的设计)。

用例与本模块中涵盖的其他框架不同,React 不会对代码约定或文件组织实施严格的规则。这使团队可以设置最适合自己的约定,并以他们希望的任何方式采用 React。React 可以处理一个按钮,一个界面的几个部分或应用程序的整个用户界面。

尽管 React 可以用于界面的小片段中,但要和 jQuery 这样的库,甚至是像 Vue 这样的框架那样“引入”应用程序并不容易——当你使用 React 构建整个应用程序时更容易上手。

另外,许多开发人员的经验对于 React 应用程序也是有用处的,例如使用 JSX 编写界面是需要编译过程的。在网站上添加类似于 Babel 的编译器会让网站上代码的运行速度变慢,因此开发人员通常会在构建项目的时候设置这样的工具。React 对于工具的要求可以说是很高的,但这是能够学习解决的。

本文将重点介绍使用 React 通过 Facebook 的 create-react-app 内的工具渲染应用程序中整个用户界面的用例。

React 如何使用 JavaScript?React 中的许多模式都使用了现代 JavaScript 的功能。React 与 JavaScript 的最大区别在于 JSX 语法的使用上。JSX 是在 JavaScript 语法上的拓展,因此类似于 HTML 的代码可以和 JSX 共存。例如:

jsconst heading =

Mozilla Developer Network

;

该 heading 常量称为 JSX 表达式。React 可以使用它在我们的应用程序中渲染

标签。

假设出于语义原因,我们想将 heading 包装

在标记中?JSX 方法允许我们将元素彼此嵌套,就像使用 HTML 一样:

jsconst header = (

Mozilla Developer Network

);

备注:

上一个代码段中的括号并非 JSX 的一部分,它对你的应用程序没有任何影响,括号只是用来向你(和你的计算机)表明其中的多行代码属于同一个表达式 (译者注:原文表述实在有点啰嗦)。因此上面的代码等同于:

jsxconst header =

Mozilla Developer Network

;

这看起来多少有点不适感,因为表达式前面的

标记没有缩进与其对应的结束标记相同的位置。

浏览器是无法读取直接解析 JSX 的。我们的 header 表达式经过( Babel 或 Parcel 之类的工具)编译之后是这样的:

jsconst header = React.createElement(

"header",

null,

React.createElement("h1", null, "Mozilla Developer Network"),

);

可以跳过编译步骤,并使用 React.createElement() 自己编写 UI。但是,这样做会失去 JSX 的声明性优势,并且代码变得更难以阅读。编译是开发过程中的一个额外步骤,但是 React 社区中的许多开发人员都认为 JSX 的可读性值得。另外,流行的工具使 JSX-to-JavaScript 编译成为其设置过程的一部分。除非你愿意,否则不必自己配置编译。

由于 JSX 是 HTML 和 JavaScript 的结合,因此一些开发人员认为它很直观。其他人则说它的混合特性使它变得混乱。但是,一旦熟悉了它,它将使你能够更快,更直观地构建用户界面,并使其他人一眼就能更好地理解你的代码库。

要阅读有关 JSX 的更多信息,请查看 React 团队的 JSX In Depth 文章。

设置你的第一个 React 应用有很多使用 React 的方法,但是我们将使用命令行界面(CLI)工具 create-react-app,如前所述,该方法通过安装一些软件包并创建一些软件包来加快开发 React 应用程序的过程。文件供你处理上述工具。

通过将一些