React-14 React的组件生命周期

组件的生命周期:组件从被创建到挂载到页面中运行,再到组件被卸载的过程。

生命周期的每个阶段总是伴随着一些方法的调用,这些方法就是生命周期的钩子函数。

钩子函数的作用:为开发人员在不同阶段操作组件提供了时机。

注意:只有类组件才有生命周期!

生命周期的三个阶段

1. 创建时(挂载阶段)

执行时机:页面加载(组件创建)时;

此阶段一共有三个钩子函数:constructor、render、componentDidMount;

class App extends React.Component{
    constructor(props){
        super(props)
        console.warn("生命周期钩子函数: constructor")
    }
    componentDidMount(){
        console.warn("生命周期钩子函数: componentDidMount")
    }
    render(){
        console.warn("生命周期钩子函数: render")
        return (
            <div>
                <h1>组件创建时</h1>
            </div>
        )
    }
}
ReactDOM.render(<App />,document.getElementById('root'))

其输出结果如下:

由此可见这三个钩子函数执行顺序为:

 

2. 更新时(更新阶段)

有三种情况会导致组件更新:

1)组件接收到新的props值;

2)调用setState方法;

3)调用this.forceUpdate()方法强制更新页面;

该阶段下钩子函数的执行顺序为:

 在componentDidUpdate周期中,不能直接调用this.setState()方法,这会导致递归更新,

我们通常是比较更新前后的props是否相同,来决定是否更新

  componentDidUpdate(prevProps){
        console.log("上一次props:"+prevProps);
        console.log("当前props:"+this.props)
        if(prevProp.属性名!=this.props.属性名){
            this.setState({})
        }
    }

3. 卸载时(卸载阶段)

执行时机:组件从页面中消失

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阁下何不同风起?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值