React基础与实践|青训营笔记

92 阅读2分钟

React基础与实践|青训营笔记

React特性与简介

React——用于构建用户界面的JavaScript库

特性

  • 声明式
  • 组件化
  • 跨平台编写

优点

  • 快速响应:Fiber
  • 组件化:复用性强
  • 声明式编程
  • 跨平台:只需修改渲染器

缺点

  • 大型应用需要配套学习 状态管理、路由工具
  • 不适合小型应用,需要用babel处理

React基础

用React开发web应用

  • 架构——打包配置:JSX->babel->JS,加载优化,错误降级。
  • 路由:向应用中快速地添加视图和数据流,保持页面与URL之间的同步。
  • UI:可复用UI->组件->页面,可复用逻辑抽离成hook。
  • 状态:多页面多组件共享信息,redux&context

用React开发web应用——组件

  • 数据:通过定义state操作视图,Mount时获取数据更新state,Ref保存与视图无直接关系的值,unMount前清空Ref。
  • 通信:props父子组件通信,redux & context组件信息共享。
  • UI:数据决定视图,通过Ref获取DOM。
  • 性能:函数使用uesCallback,值或者计算使用useMemo,组件包裹memo。

组件

Class组件

  • 继承+构造函数
  • this
  • 生命周期
  • render方法

函数式组件

  • 没有生命周期
  • 借助Hook
  • return JSX

函数式相较于Class的优点

  • 代码量骤减,组件干净清爽
  • 没有复杂的生命周期
  • 支持自定义Hook,逻辑复用方便

组件和Hook的关系

我们将UI拆分成多个独立单元,这些单元组合可以构成多种视图展示,这些独立单元就是组件。

Hook的规则与原理

  • 只能在最顶层使用Hook,React靠Hook调用的顺序确定state与useState之间的对应关系。
  • 只能在React函数中调用Hook。在React函数组件中或自定义Hook中调用,自定义Hook必须以use开头,Hook中的state是完全隔离的。

个人心得体会

老师后面通过举出一些实例讲述react组件具体的使用与优化,我们可以直观地看到这个工具是十分好用,灵活性也非常高,熟练运用一定可以给自己项目的前端的开发添砖加瓦。