react同步方法_React 之我见:JSX,虚拟 DOM,Diff 算法,setState,props 和state

本文探讨 React 的核心特性,包括使用 JSX 和虚拟 DOM 实现UI与状态同步,讲解React组件、生命周期、Diff算法以及setState的异步行为。还对比了React与Vue,强调React的简洁设计理念和JavaScript基础的重要性。
摘要由CSDN通过智能技术生成

d76605773205bdee6428b9929ae64b30.png

本文主要梳理一下我对 React 框架基础内容的认识,之后也会总结一些深度内容的认识。当然,笔者水平也有限,如果你发现不妥之处,望斧正!

为什么要用 React 等前端框架

因为可以进行组件化开发?社区强大?使用的人多?有很多好用的第三方库和插件?适用于单页面应用开发?这些都不是最本质的原因。

最本质的原因是保持 UI 和状态同步并不容易。

使用原生 JavaScript 编写代码的时候,一般静态内容是在 HTML 中创建,动态内容使用 JavaScript 创建。但是使用 JavaScript 构建 UI 代码量巨大,并且可读性不高,代码可复用性也差。

更重要的是,如果我们想要保持 UI 和状态的同步应该怎么做?例如,我们有一个列表,我们需要实现将列表与服务器同步的功能。我们需要将本地数据和服务器发来的数据进行比较。并且需要点对点的将每个变更同步到 DOM 节点中。如果这个过程中有每一步出现差错都直接导致 UI 同步失败。因此,维护 UI 与数据同步需要编写大量繁琐,脆弱和脆弱的代码。

为了解决以上问题,降低开发成本,前端社区出现了 React 等框架。到目前为止,这些框架提供的最大的改进是实现应用状态和 UI 同步。我们只需要定义一次 UI,不必为每一次动作都编写 UI。相同的状态总能得到相同的 UI 输出,即状态和 UI 同步,状态变更后会自动更新 UI。

推荐阅读: https:// zhuanlan.zhihu.com/p/39 852035

React VS Vue

很多人都说 React 上手要难一些,Vue 上手要简单一些。也有很多人在问 React 和 Vue 的区别是什么。我想说一下我的理解。

首先,在框架设计层面,React 是 MVC 软件架构中的 View,它只负责视图层的东西,而对于数据和路由等,则由 Redux 和 Router 等来完成。这也就是为什么 React 官方文档说 “React 是一个用于构建用户界面的 JavaScript 库”。而 Vue 则不同,Vue 是基于 MVVM 架构设计的一个框架,所以在架构层面,Vue 和 React 的思想就是不同的。

React 的设计哲学很简单,不可变(Immutable)思想贯穿了整个框架的设计。React 可以说没引进什么新的概念,让开发者能够以类似写原生 JavaScript 代码的方式来使用 React 进行开发。这也就是很多人说 React 难的原因,即 JavaScript 基础知识。

而很多人说 Vue 容易上手,可能有些同学就迷惑了,我觉得 Vue 不简单啊。笔者认为,说 Vue 简单是因为 Vue 将很多底层逻辑封装好了,直接给你对应的 API,你调用对应 API 就可以完成对应的工作。所以,你不需要有很扎实的 JavaScript 基础,你只要记住或者能够查阅到对应 API 就可以用 Vue 完成一些基础性的开发。所以有些后端的同学可以看看 Vue 官方文档就能上手基础的前端开发。

React 之我见,那一定要说我的看法,我喜欢 React。我喜欢其简洁的设计理念和类原

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值