开发者社区> 问答> 正文

#React 组件生命周期有哪些不同阶段?

#React 组件生命周期有哪些不同阶段?

展开
收起
因为相信,所以看见。 2020-05-07 16:58:53 1103 0
1 条回答
写回答
取消 提交回答
  • 阿里,我所有的向往

    组件生命周期具有三个不同的生命周期阶段:

    挂载:该组件已准备好在浏览器DOM中挂载。该阶段包括从初始化constructor(),getDerivedStateFromProps(),render(),和componentDidMount()生命周期方法。

    更新:在此阶段,组件通过两种方式进行更新,即发送新道具和通过setState()或更新状态forceUpdate()。该阶段包括getDerivedStateFromProps(),shouldComponentUpdate(),render(),getSnapshotBeforeUpdate()和componentDidUpdate()生命周期方法。

    卸载:在最后一个阶段,不需要该组件,并且可以从浏览器DOM中卸载该组件。此阶段包括componentWillUnmount()生命周期方法。

    值得一提的是,在将更改应用于DOM时,React内部具有阶段性概念。它们分开如下

    渲染组件将渲染而没有任何副作用。这适用于Pure组件,在此阶段,React可以暂停,中止或重新启动渲染。

    预提交在组件实际将更改应用于DOM之前,有一段时间可以让React通过读取DOM getSnapshotBeforeUpdate()。

    Commit React与DOM一起工作,并分别执行最终的生命周期componentDidMount(),componentDidUpdate()以进行安装,更新和componentWillUnmount()卸载。

    React 16.3+阶段(或交互式版本)

    phases 16.3+

    在React 16.3之前

    2020-05-07 16:59:11
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
利用编译将 Vue 组件转成 React 组件 立即下载
React Native 全量化实践 立即下载
React在大型后台管理项目中的工程实践 立即下载