生命周期主要分为以下几个阶段:
constructor
,用来初始化state,另一个函数就是componentDidMount
,这个函数一般是在组件创建好DOM元素之后,挂载进页面的时候调用;componentWillReceiveProps
,这个函数已经被废弃了,但是我们还是要了解,面试的时候要提及,这个函数一般是在组件接收到一个新的props(更新)的时候被调用,但是使用的时候会出问题,所以现在有了一个替代函数:state getDerivedStateFromProps(nextProps,prevState)
,这个的作用就是对比当前的props和之前的state的变化;shouldComponentUpdate(nextProps,nextState)
:通过判断props和state的变化,来判断是否需要来更新,一般如果没有指定,就会默认自动更新componentDidUpdate
:组件更新后调用;componentWillUnmount()
组件销毁后调用具体来说,react组件的生命周期可以用下图来表示:
其实react生命周期远不止这些,但是记住常用的这些就够了,其他的基本不用,甚至会在后面被废弃掉,因为react越来越强调函数的使用,而生命周期的概念是类组件中的概念。