生命周期概念
- 生命周期:简单来说就是一个事物从出生到消亡的过程就是生命周期,在React中的生命周期,就是组件从创建、挂载到页面再到卸载组件的过程。
- 意义:生命周期有助于理解组件运行方式、完成复杂组件功能、分析组件中间问题产生的原因等。
- 生命周期钩子函数:为开发人员在不同阶段操作提供时机
生命周期
挂载阶段
- 挂载阶段生命周期钩子函数有三个,执行顺序是
constructor
=>render
=>componentDidMount
钩子函数 | 触发时机 | 作用 |
---|---|---|
constructor | 创建组件时,最先执行 | 1. 初始化 state 2. 创建 Ref 等 |
render | 每次组件渲染都会触发 | 渲染 UI(注意: 不能调用 setState() ) |
componentDidMount | 组件挂载(完成 DOM 渲染)后 | 1. 发送网络请求 2.DOM 操作 |
更新阶段
- 更新阶段常用的生命周期函数有 2 个,执行顺序是 render => componentDidUpdate。
- 触发更新:
setState()
、forceUpdate()
、New props
(父组件进行了 render)。
钩子函数 | 触发时机 | 作用 |
---|---|---|
render | 每次组件渲染都会触发 | 渲染 UI(与挂载阶段是同一个 render) |
componentDidUpdate | 组件更新(完成 DOM 渲染)后 | DOM 操作,可以获取到更新后的 DOM 内容,不要调用 setState |
## 卸载阶段 |
- 触发时机:组件从页面中消失。
ReactDOM.unmountComponentAtNode(document.getElementById('root'))
钩子函数 | 触发时机 | 作用 |
---|---|---|
componentwillUnmount | 组件卸载(从页面中消失) | 执行清理工作(比如:清理定时器等、解绑事件等) |
总结
生命周期、钩子函数使我们必须要了解的,是非常重要的,对于函数的执行机制掌握,不论是对于开发还是学习都是我们必须掌握的
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。