React之入门第(五)篇

62 阅读1分钟

生命周期

组件的生命周期是指组件从被创建到挂载到页面中运行起来,再到组件不用时卸载的过程,注意,只有类组件才有生命周期(类组件 实例化  函数组件 不需要实例化)

image.png 钩子链接:React lifecycle methods diagram (wojtekmaj.pl)

生命周期 - 挂载阶段

  1. constructor:类中的构造器充当了生命周期,此时拿到数据源
  2. render:相当于vue中的 beforeMount,还拿不到 dom
  3. componentDidMount:挂载完成,可以拿到 dom

image.png

钩子 函数触发机制作用
constructor创建组件时,最先执行,初始化的时候只执行一次1. 初始化state  2. 创建 Ref 3. 使用 bind 解决 this 指向问题等
render每次组件渲染都会触发渲染UI(注意: 不能在里面调用setState()
componentDidMount组件挂载(完成DOM渲染)后执行,初始化的时候执行一次1. 发送网络请求   2.DOM操作

生命周期 - 更新阶段

  1. render:父组件传参 New props,修改数据源 setState,强制更新 forceUpdated 都会重新渲染 render
  2. componentDidUpdate:更新完成

image.png

钩子 函数触发机制作用
render每次组件渲染都会触发渲染UI(与 挂载阶段 是同一个render)
componentDidUpdate组件更新后(DOM渲染完毕)DOM操作,可以获取到更新后的DOM内容,不要直接调用setState

生命周期 - 卸载阶段

  1. componentWillUnmount:组件即将卸载时执行
钩子 函数触发机制作用
componentWillUnmount组件卸载(从页面中消失)执行清理工作(比如:清理定时器等))