在react中只有类组件有生命周期,函数组件是没有滴
一、初始化
1.static getDerivedStateFromProps(){
return{
}
}
2.render()
3.componentDidMount(){
可以在这个生命周期内进行异步请求,适用于只执行一次的异步请求,如果异步请求执行不止一次,每次相关状态跟新的时候也要发送请求,这个时候就要利用运行生命周期中的第一个和最后一个生命周期函数结合实现
这个生命周期还可以绑定事件,写订阅函数,注册计时器
}
组件一经被创建,依次执行上述生命周期,除了第一个外,其余的只执行一次,因为第一个是新生命周期,替代了之前的componentWillMount()和更新阶段的componentWillReciveProps(nextProps,nextState),每当组件更新状态的时候都会执行这个生命周期1
二、运行中
1.static getDerivedStateFromProps(nextProps,nextState){
return {
}
}
2.shouldComponentUpdate(nextProps,nextState)
这个生命周期是也是性能优化函数
3.render()
4..getSnapshotBeforeUpdate(prevProps,prevState){
return val
}
5.componentDidUpdate(nextProps,nextState,value){
这里的第三个参数是上一个生命周期return中的值,进行后续业务逻辑
}
三、销毁阶段
comoonentWillUnmount(){
组件被销毁的时候自动执行这个生命周期,销毁绑定的事件或者是定时器
}