旧版:
新版:
getDerivedStateFromProps,接收两个参数,props,state,只有当状态参数state完全由props决定时使用,这个生命周期函数返回的参数会影响state的参数变化,默认返回state状态参数。
class Demo extends React.Component{
state={count:0}
static getDerivedStateFromProps(props,state){
return state
}
}
getSnapShotBeforeUpdate,用于组件更新时,在最近一次渲染输出前调用,在组件发生更改之前从Dom中捕获一些信息,此生命周期函数的返回值会传给componentDidUpdate(),componentDidUpdate可接收3个参数,preProps,preState,最后一个就是snapShot,getSnapShotBeforeUpdate传递的值。
class Demo extends React.Component{
getSnapshotBeforeUpdate(){
return {count:1}
}
componentDidUpdate(preProps,preState,snapShot){
}
}