React的生命週期總共8個鉤子,三個will,兩個Did,一個RecciveProps,一個ShouldUpdate,一個render。
分為三個階段,分別是
裝載 Mounting
更新 Updating
解除安裝 Unmounting
1. 鉤子說明
1.componentWillReceiveProps
mounted的元件接收新的props的時候,被呼叫,引數是新的props。可以在其中比較新的props和this.props,從而執行修改state等操作
2.shouldComponentUpdate
mounted的元件接收到新的state和props後,判斷是否有必要更新元件。可以通過新的props和新state物件和
this.props和this.state比較,來決定是否更新DOM結構。返回true更新,false不更新。
3.componentWillUpdate
元件更新前呼叫
4.componentDidUpdate
元件更新後呼叫
5.componentWillUnmount
元件銷燬前執行一項操作,例如清除定時器,解綁事件等
6.getDefaultProps
並不是獲取props的預設值,而是設定預設的props,此方法返回一個物件,設定props的預設值,如果父元件沒有給某個prop那就用預設的
7.getInitialState
並不是獲取元件的初始狀態,而是設定初始的state,此方法返回一個物件,設定元件mount以後的初始state
參考:http://www.cnblogs.com/liulixiang/p/5002469.html