鈎子函數的狀態有4個階段:
<p>1.初始化階段 (componentWillMount() || componentDidMount()) </p>
<p>2.更新階段 (componentWillUpdate() || componentDidUpdate())</p>
<p>3.卸載階段 (componentWillUnmount())</p>
<p>4.異常處理階段 (componentWillCatch()) </p>
“鈎子”就是在某個階段給你一個做某些處理的機會。生命周期鈎子函數就是在組件預備、創建、使用和銷毀的過程中的函數監聽。
React 組件生命周期:
componentWillMount :在渲染前調用,在客戶端也在服務端。
componentDidMount:在第一次渲染后調用,只在客戶端。之后組件已經生成了對應的DOM結構,可以通過this.getDOMNode()來進行訪問。
componentWillReceiveProps:在組件接收到一個新的prop時被調用。這個方法在初始化render時不會被調用。
shouldComponentUpdate:返回一個布爾值。在組件接收到新的props或者state時被調用。在初始化時或者使用forceUpdate時不被調用,可以在你確認不需要更新組件時使用。
componentWillUpdate:在組件接收到新的props或者state但還沒有render時被調用。在初始化時不會被調用。
componentDidUpdate:在組件完成更新后立即調用。在初始化時不會被調用。
componentWillUnmount:在組件從 DOM 中移除的時候立刻被調用。