只有类组件中有生命周期函数,函数组件没有。
挂载
constructor 可以进行state和props的初始化
static getDerivedStateFromProps 用于在组件接收新的props时计算并返回新的state
render
componentDidMount 第一次渲染后调用,可以访问DOM,进行异步请求和定时器、消息订阅
更新
static getDerivedStateFromProps 当组件的props或state变化会触发更新
shouldComponentUpdate 返回一个布尔值,默认返回 true,可以通过这个生命周期钩子
进行性能优化,确认不需要更新组件时调用
render
getSnapShotBeforeUpdate
componentDidUpdate 在组件完成更新后调用
卸载
componentWillUnmount 组件从DOM中被移除的时候调用