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

74 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第8天。

React 组件使用一个名为 render() 的方法,接收输入的数据并返回需要展示的内容。在示例中这种类似 XML 的写法被称为 JSX。被传入的数据可在组件中通过 this.props 在 render() 访问。 使用 React 的时候也可以不使用 JSX 语法。

01.React 的历史与应用

  • 前端应用开发,如Facebook,Instagram,Netflix 网页版。
  • 移动原生应用开发,如 Instagram,Discord,Oculus.
  • 结合 Electron,进行桌面应用开发
  • 构建3D场景、VR、构建游戏

02.React 的设计思路

  • React 的设计思路-UI编程痛点
  1. 状态更新,UI 不会自动更新,需要手动地调用DOM进行更新。
  2. 欠缺基本的代码层面的封装和隔离,代码层面没有组件化。
  3. UI之间的数据依赖关系,需要手动维护,如果依赖链路长,则会遇到“allback Hel”。

转换式系统:给定[输入] 求解[输出],常用于编译器、数值计算 响应式系统:统监听事件,消息驱动,常用于监控系统、UI 界面

框架

** 事件——执行既定的回调——状态变更(——UI变更) **

1.状态更新,UI 自动更新
“状态更新,UI 不会自动更新,需要手动地调用 DOM 进行更新
2.前端代码组件化,可复用,可封装
 “欠缺基本的代码层面的封装和隔离,代码层面没有组件化
3.状态之间的互相依赖关系,只需声明即可
“UI之间的数据依赖关系,需要手动维护,如果依赖链路长,则会遇到Callback Hell
组件化
  1. 组件是组件的组合/原子组件
  2. 组件内拥有状态,外部不可见
  3. 父组件可将状态传入组件内部
  • React 是单向数据流 父组件给子组件传送给信息
组件代码
  1. 组件内部拥有私有状态 State
  2. 组件接受外部的 Props 状态提供复用性
  3. 根据当前的 State/Props,返回一个 UI。

03. React的写法(hooks)

04.React 的实现

05.React 状态管理库

06.应用级框架科普