react入门笔记

什么是React?

React是一个用于创建用户界面的开源前端javaScript库。它是声明式的、高效的和灵活的,并且他坚持基于组件的方法,这使得我们能够创建可重用的UI组件。

React是一个开源的前端javaScript库,用于构建用户界面或者UI组件。它是由Facebook和一个由个人开发者和公司组成的社区维护。它本质上是一个渲染组件的库,尽管他们不是传统的web组件。

React使用一种名为JSX(使用JavaScript+XML)的语言,开发人员可以在React组件中包含所有前端代码(包括HTML和CSS)。

React最酷的一点是它完全关注组件渲染过程。它在某种程度上遵循了单一职责原则。将组件渲染在web应用的屏幕上,但不需要担心路由、状态管理或构建整个前端应用所需的其他工具。

从头搭建会非常麻烦,但是同样也会学到很多东西,熟练后,可以使用create-react-app等工具快速构建React开发环境。

React是如何工作的?

React不是直接操作DOM,而是在内存中创建一个虚拟DOM(Virtual DOM),在对浏览器DOM进行更改之前,会在其中进行所有必要的操作。

React会找出已经进行了哪些更改,并且之更改需要更改的内容,整个过程中使用了diff算法,通过diff算法可以避免一些不必要的DOM操作,从而提升性能。

(虚拟DOM是真实DOM的任何一种表示形式(例如JS对象表示)。当我们在虚拟DOM树中更改某些内容时,我们会得到一个新的虚拟树。diff算法比较这两种树(旧树和新树)找出差异。这种方式除了提升性能,也方便了与其他环境集成。)

如何使用?

引入CDN

您可以直接在HTML文件练习、编写React,通过CDN引入的方式:

javascript 复制代码
<!-- 加载 React 和 React DOM 的 UMD 版本 -->
    <script
      crossorigin
      src="https://unpkg.com/react@18/umd/react.development.js"
    ></script>
    <script
      crossorigin
      src="https://unpkg.com/react-dom@18/umd/react-dom.development.js"
    ></script>
    <!-- 使用 JSX 需要用到的 Babel -->
    <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>

一个简单的例子:

javascript 复制代码
<div id="root"></div>
// ReactDOM。渲染在React 18中不再被支持。请使用createRoot。在你切换到新的API之前,你的应用程序会像运行React 17一样运行。
// React 17
ReactDOM.render(<Hello />, document.getElementById("root"));
// React 18
ReactDOM.createRoot(document.getElementById('root')).render(<Hello />);

并使用特殊的 text/babel MIME类型加载您的脚本。

(Tips:当然,上述提供的版本仅用于开发环境,您可以使用压缩优化后可用于生产环境的React版本。另外,我们为什么要在script标签上使用crossorigin属性,都可以在React官网中找到。)

未完,每天会加入一部分,纯手打,有点慢,只有晚上一点时间写,见谅

相关推荐
拉不动的猪5 分钟前
刷刷题50(常见的js数据通信与渲染问题)
前端·javascript·面试
拉不动的猪13 分钟前
JS多线程Webworks中的几种实战场景演示
前端·javascript·面试
FreeCultureBoy1 小时前
macOS 命令行 原生挂载 webdav 方法
前端
uhakadotcom2 小时前
Astro 框架:快速构建内容驱动型网站的利器
前端·javascript·面试
uhakadotcom2 小时前
了解Nest.js和Next.js:如何选择合适的框架
前端·javascript·面试
uhakadotcom2 小时前
React与Next.js:基础知识及应用场景
前端·面试·github
uhakadotcom2 小时前
Remix 框架:性能与易用性的完美结合
前端·javascript·面试
uhakadotcom2 小时前
Node.js 包管理器:npm vs pnpm
前端·javascript·面试
LaoZhangAI3 小时前
2025最全GPT-4o图像生成API指南:官方接口配置+15个实用提示词【保姆级教程】
前端
ONE_Gua3 小时前
chromium魔改——CDP(Chrome DevTools Protocol)检测01
前端·后端·爬虫