react生命周期

react生命周期

参考
1.官方中文网
2.详解React生命周期(包括react16版)


1.组件的constructor构造,只是书写super(props),react会建议删除
2.componentWillMount组件挂载之前
3.render渲染
4.componentDidMount组件挂载之后(官方建议这里使用axios请求,我喜欢在1或者2)


更新:
componentWillReceiveProps(props变化引起的更新)中使用this.setState不回引起prop修改渲染后再一次state修改渲染,他通过判断props是否变化来激发setState重新渲染,所以不会出现第二次setState的渲染
shouldComponentUpdate(判断props或者state的状态变化来选择是否继续下一步)通过判断更新前后props或者state属性值是否改变来选择是否重新渲染组件
render()
componentDidUpdate(更新之后)


卸载:
componentWillUnmount卸载前处理操作


16推出之后
componentWillMount
componentWillReceiveProps
componentWillUpdate
由于 their potential misuse may be more problematic with async rendering(在异步渲染中潜在的滥用可能导致更大的问题),所以这三个弟弟被加了新的前缀UNSAFE_弟弟,不安全的弟弟


挂载
当组件实例被创建并插入 DOM 中时,其生命周期调用顺序如下:

constructor()
static getDerivedStateFromProps()
render()
componentDidMount()


更新
当组件的 props 或 state 发生变化时会触发更新。组件更新的生命周期调用顺序如下:

static getDerivedStateFromProps()
shouldComponentUpdate()
render()
getSnapshotBeforeUpdate()
componentDidUpdate()


错误处理
当渲染过程,生命周期,或子组件的构造函数中抛出错误时,会调用如下方法:

static getDerivedStateFromError()
componentDidCatch()


详细可以去中文官网了解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值