博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React ~ 生命周期
阅读量:5321 次
发布时间:2019-06-14

本文共 911 字,大约阅读时间需要 3 分钟。

react 生命周期

  React 的生命周期分为三个阶段: 初始化、更新、销毁。

 

  • 初始化

1、getDefaultProps()

设置默认的props,也可以用dufaultProps设置组件的默认属性.

2、getInitialState()

在使用es6的class语法时是没有这个钩子函数的,可以直接在constructor中定义this.state。此时可以访问this.props

3、componentWillMount()

组件初始化时只调用,以后组件更新不调用,整个生命周期只调用一次,此时可以修改state。

4、 render()

react最重要的步骤,创建虚拟dom,进行diff算法,更新dom树都在此进行。此时就不能更改state了。

5、componentDidMount()

组件渲染之后调用,只调用一次。

  • 更新

componentWillReceiveProps(nextProps)

组件初始化时不调用,组件接受新的props时调用。

7、shouldComponentUpdate(nextProps, nextState)

react性能优化非常重要的一环。组件接受新的state或者props时调用,我们可以设置在此对比前后两个props和state是否相同,如果相同则返回false阻止更新,因为相同的属性状态一定会生成相同的dom树,这样就不需要创造新的dom树和旧的dom树进行diff算法对比,节省大量性能,尤其是在dom结构复杂的时候

8、componentWillUpdata(nextProps, nextState)

组件初始化时不调用,只有在组件将要更新时才调用,此时可以修改state

9、render()

组件渲染

10、componentDidUpdate()

组件初始化时不调用,组件更新完成后调用,此时可以获取dom节点。

  • 销毁

11、componentWillUnmount()

组件将要卸载时调用,一些事件监听和定时器需要在此时清除。

转载于:https://www.cnblogs.com/BillyYoung/p/10877193.html

你可能感兴趣的文章
39. Combination Sum(C++)
查看>>
PS如何拉倒影效果
查看>>
CSP-201803-2 碰撞的小球
查看>>
[测试] Markdown+Latex
查看>>
HTTPS连接前的几毫秒发生了什么?
查看>>
The Willpower Instinct
查看>>
scrapy 手动编写模板
查看>>
【java】对象序列化Serializable、transient
查看>>
05.数组和字典
查看>>
数组中 == 比较运算符注意事项
查看>>
应用三:Vue之混入(mixin)与全局混入
查看>>
Android开发环境的搭建
查看>>
STS启动springboot项目,加载不了resources下的配置文件的问题
查看>>
牛客多校第四场 F Beautiful Garden
查看>>
lib和dll的认识
查看>>
Centos7.4下安装Redis5.0
查看>>
WINFORM窗体里使用网页控件的一些办法
查看>>
9.16 基于form表单的文件上传实现 ContextType
查看>>
获取数据库表中自增长最新的id
查看>>
配置Codis-FE(管理界面)
查看>>