| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> React是如何工作的? -> 正文阅读 |
|
[JavaScript知识库]React是如何工作的? |
React自推出以来,改变了前端开发人员构建web应用程序的方式。使用虚拟DOM,React使UI更新更加高效,使web应用程序更加快速。但是,为什么中等规模的React web应用程序仍然表现不佳? 关键就在于你是如何使用React的。 像React这样的现代前端库并不能神奇地让你的应用程序更快。它要求开发人员了解React是如何工作的,以及组件在组件生命周期的各个阶段是如何生存的。 使用React,你可以通过测量和优化组件渲染的方式和时间,获得它必须提供的许多性能改进。而且,React只提供了简化此操作所需的工具和功能。 React是如何工作的? React开发的核心是简单明了的JSX语法,以及React构建和比较虚拟DOM的能力。自发布以来,React影响了许多其他前端库,诸如Vue.js也依赖于虚拟DOM的思想。 以下是React的工作原理: 每个React应用程序都以根组件开始,并由树结构中的许多组件组成。React中的组件是“函数”,它们根据用户界面接收的数据(道具和状态)呈现用户界面。 我们可以用F来表示。 UI = F(data) 用户与UI交互并导致数据更改。无论交互涉及单击按钮、点击图像、拖动列表项、AJAX请求调用API等,所有这些交互都只会更改数据。它们不会直接导致用户界面的改变。 在这里,数据是定义web应用程序状态的一切,而不仅仅是存储在数据库中的内容。甚至前端状态的位(例如,当前选择了哪个选项卡或当前是否选中了复选框)也是该数据的一部分。? 每当此数据发生更改时,React都会使用组件函数重新呈现UI,但实际上仅限于: UI1=F(data1) UI2=F(data2) React通过在其虚拟DOM的两个版本上应用比较算法来计算当前UI和新UI之间的差异。 Changes = Diff(UI1, UI2) React然后继续仅将UI更改应用于浏览器上的真实UI。 当与组件关联的数据发生更改时,React确定是否需要实际的DOM更新。这允许React避免在浏览器中进行可能非常昂贵的DOM操作,例如创建DOM节点和访问现有的DOM节点。 组件的重复扩散和渲染可能是任何React应用程序中React性能问题的主要来源之一。构建一个React应用程序,其中扩散算法无法有效协调,导致整个应用程序重复渲染,可能会导致令人沮丧的缓慢体验。 要充分利用React,你需要利用它的工具和技术。React web应用程序的性能在于其组件的简单性,在优化应用程序之前,你需要了解React组件的工作原理以及它们在浏览器中的呈现方式。React生命周期方法提供了防止组件不必要地重新渲染的方法。消除这些瓶颈,你将获得用户应得的应用程序性能。让你学到的技能贴合就业市场,不怕面对就业竞争对手。 本文来源:www.gec-edu.org |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 9:45:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |