react 生命周期详解+++

 


生命周期 


挂载:


constructor作用:
1、通过给this.state赋值对象来初始化内部state
2、为事件处理函数绑定实例

static getDerivedStateFromProps:调用render方法之前调用,并且在初始化挂载以及后续更新时都会被调用。意义是从props中获取数据给自身的state,具有两个形参
--nextProps:最新的props对象
--prevState:上一次的state对象
使用之前必须初始化state
会返回一个state或者null
如果返回state,则表示将会更新数据到自身的state
如果返回null,则表示数据不会发生改变
使用场景:
-- 统一管理数据,将所有数据(外部数据,内部数据)都放到state中管理
-- 在1的基础上实现props数据可写

 render:渲染函数

componentDidMount:组件挂载后立即调用,依赖于DOM节点的初始化应该放在这里,
1、如网络请求获取数据
2、添加订阅,要在componentWillUnmount里取消订阅


更新:


static getDervedStateFromProps
shouldComponentUpdate:决定组件是否更新
使用意义:性能优化
该周期函数必须返回bool值,true表示允许更新,false不允许更新,
触发时机:
--父传递来props发生改变
--自身state发生改变
可以被PureComponent替代

render

getSnapshotBeforeUpdate:更新之前获取快照,写一些更新之前的操作,必须和componentDidUpdate一起使用

componentDidUpdate:第三形参就是getSnapshotBeforeUpdate的返回值


卸载:


componentWillUnmount:卸载周期函数,进行一些副作用代码的清理,例如清理定时器,清理网络请求等

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值