响应式系统与React | 青训营笔记

简介: 响应式系统与React | 青训营笔记

React基本概念

React是一个基于组件的声明式UI库,用于构建高效、快速的用户界面。


React的历史与应用

React应用场景

  • 前端应用开发,如Facebook,Instagram,Netflix网页版
  • 移动原生应用开发,如Instagram,Discord,Oculus
  • 结合Electron,进行桌面应用开发


React 的设计思路

UI 编程痛点

  • 状态更新,UI 不会自动更新,需要手动地调用 DOM 进行更新
  • 欠缺基本的代码层面的封装和隔离,代码层面没有组件化
  • UI 之间的数据依赖关系,需要手动维护,如果依赖链路长,则会遇到“Callback Hell”


响应式与转换式 & 响应式编程

e32d3563090848f3b2870642a14d93f9_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


  1. 转换式系统:给定输入求解输出,如编译器、数值计算
  2. 响应式系统:监听事件、消息驱动,如监听事件、UI界面

响应式系统:事件->执行既定的回调-> 因此React设计思路是:

  1. 状态更新,UI自动更新
  2. 前端代码组件化,可复用可封装
  3. 状态之间的互相依赖关系,只需声明即可


React的特点

  • 声明式写法 你只需要描述UI(HTML)看起来是什么样,就跟写HTML一样,React负责将你写的HTML渲染出来
  • 组件化 React 中一切都是组件(万物皆可组件)。 我们通常将应用程序的整个逻辑分解为小的单个部分。 我们将每个单独的部分称为组件。 通常,组件是一个javascript函数,它接受输入,处理它并返回在UI中呈现的React元素。


React生命周期

  • 生命周期是一个抽象的概念,在生命周期的整个过程,分成了很多个阶段;
  • 比如初始化阶段(Constructor),通过给 this.state 赋值对象来初始化内部的state。
  • 比如装载阶段(Mount),组件第一次在DOM树中被渲染的过程;
  • 比如更新过程(Update),组件状态发生变化,重新更新渲染的过程;
  • 比如卸载过程(Unmount),组件从DOM树中被移除的过程;


  • React内部为了告诉我们当前处于哪些阶段,会对我们组件内部实现的某些函数进行回调,这些函数就是生命周期函数:
  • 比如实现componentDidMount函数:组件已经挂载到DOM上时,就会回调;
  • 比如实现componentDidUpdate函数:组件已经发生了更新时,就会回调;
  • 比如实现componentWillUnmount函数:组件即将被移除时,就会回调;
  • 我们可以在这些回调函数中编写自己的逻辑代码,来完成自己的需求功能;



目录
相关文章
|
5月前
|
运维 前端开发 数据可视化
【CodeBuddy】挑战一句话开发一个完整项目之:React表单验证系统
本文分享了一个基于React 19构建的用户注册表单系统,采用模块化CSS和状态驱动视图更新,实现实时校验、错误提示与提交反馈等功能。核心亮点包括验证规则引擎(如密码复杂度校验)、交互反馈体系(输入框警示、按钮禁用)及加载动画优化。通过函数式更新确保状态同步,正则表达式实现多条件验证,CSS伪元素打造流畅体验。代码结构清晰,可扩展性强,适合作为React表单开发模板。文末附CodeBuddy免费下载链接,助力高效开发!
106 1
【CodeBuddy】挑战一句话开发一个完整项目之:React表单验证系统
|
前端开发 JavaScript Java
React 速通笔记
【7月更文挑战第17天】
157 1
|
前端开发 JavaScript UED
React 基础与实践 | 青训营笔记
React 基础与实践 | 青训营笔记
110 0
|
前端开发 NoSQL Java
杨校老师项目之基于SpringBoot+React框架开发的医院挂号管理系统
杨校老师项目之基于SpringBoot+React框架开发的医院挂号管理系统
183 0
|
前端开发
【边做边学】系统解读一下React Hooks
【边做边学】系统解读一下React Hooks
|
JavaScript 前端开发 开发者
React和Vue的生态系统有何不同?
React和Vue的生态系统有何不同?
|
前端开发 JavaScript
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
151 1
|
前端开发 JavaScript API
React 生态系统:路由、状态管理、调试、测试、组件库、文档……
React 生态系统:路由、状态管理、调试、测试、组件库、文档……
249 0
|
前端开发
前端笔记:React的form表单全部置空或者某个操作框置空的做法
在React框架前端开发中,经常会有弹出框的开发,涉及到弹出框,难免就会有表单。一般在关闭弹出框或者对表单联动时,往往都需要考虑对表单进行置空操作了。
220 0
|
13天前
|
缓存 前端开发 JavaScript
React Hooks深度解析与最佳实践:提升函数组件能力的终极指南
🌟蒋星熠Jaxonic,前端探索者。专注React Hooks深度实践,从原理到实战,分享状态管理、性能优化与自定义Hook精髓。助力开发者掌握函数组件的无限可能,共赴技术星辰大海!
React Hooks深度解析与最佳实践:提升函数组件能力的终极指南