组件生命周期

只有类组件才有生命周期

常用钩子函数:

一、创建时的钩子函数

1、constructor 

触发时机:组件创建时

作用:初始化state 、为事件处理程序绑定this

2、render

触发时机:渲染时,更新时 

作用:渲染此函数的返回值,此时不能操作DOM ,也注意不要调用setState (会导致循环调用)

3、componentDidMount

触发时机:组件挂载完成后

作用:发送网络请求、操作DOM

二、更新时

导致组件更新的情况:

接收到新的 props、setState、forceUpdate

1、render

2、componentDidUpdate

触发时机:组件更新渲染后

作用:发送网络请求、操作DOM。如果想调用setState,需要放在if条件语句中,否则会导致循环调用,if条件一般是比较preProps和this.props的相关内容。

componentDidUpdate(prevProps){
    if(prevProps.num !== this.props.num){
        //this.setState({})
        //发送ajax请求,并setState
        //修改DOM
    }
}

三、卸载前

1、componentWillUNmount

触发时机:组件卸载前

作用:清理工作,如清除计时器等

 一些不常用的:

shouldComponentUpdate 等

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值