React系列-生命周期

138 阅读2分钟

面试了许多求职者,很多求职者只知其然,而不知所以然,写此文章为广大前端小伙伴指引迷津。纯干货!纯干货!纯干货!

目录

生命周期

生命周期

答:组件从 被创建 到 被销毁 的过程称为组件的生命周期。

生命周期

常见的生命周期。

  • constructor:该方法只会执行一次,组件的初始化工作,例如:初始化组件的 state。
  • render:是类组件中唯一必须实现的方法,它的返回值将作为页面渲染的视图。
  • componentWillReceiveProps:当从父类接收到 props 并且在调用另一个渲染器之前调用。
  • shouldComponentUpdate:这个方法用来判断是否需要调用 render 方法重绘 dom。返回true更新组件,返回false,阻止render渲染,默认返回true。
  • componentWillUpdate:在组件即将更新之前执行。(如果 shouldComponentUpdate 函数返回false,则不会调用 componentWillUpdate 方法。)
  • componentDidUpdate:在渲染发生后立即调用。
  • componentWillMount:在渲染之前执行。
  • componentDidMount:仅在第一次渲染后在客户端执行(发异步数据请求)。
  • componentWillUnmount:从 DOM 卸载组件后调用。用于清理内存空间。

新(react17)旧比较(废三增三)

  • 废弃了
    • componentWillMount
    • componentWillReceiveProps
    • componentWillUpdate
  • 增加了
    • getDerivedStateFromError:在渲染阶段捕捉到了后代组件中的错误时会执行。
    • getDerivedStateFromProps:让组件在 props 变化时更新 state执行。
    • getSnapshotbeforeUpdate:此生命周期函数在最近一次渲染提交至 DOM 树之前执行,此时 DOM 树还未改变,我们可以在这里获取 DOM 改变前的信息,例如:更新前 DOM 的滚动位置。(它接收两个参数,分别是:prevProps、prevState,上一个状态的 props 和上一个状态的 state。)
面试大白话

答:首先,生命周期组件从 被创建 到 被销毁 的过程其常见的生命周期render阶段...commit阶段在react17有些改变其中废弃了3个生命周期:componentWillMount、componentWillReceiveProps、componentWillUpdate。新增了getDerivedStateFromError、getDerivedStateFromProps、getSnapshotbeforeUpdate。

小白也是新手面试官,欢迎领导莅临指导工作,提出建议,小白不胜感激,不喜勿喷,点赞收藏随机送程序媛小姐姐一枚哦!!!