組件的生命週期可分紅三個狀態:html
生命週期的方法有:react
componentWillMount:在渲染前調用,在客戶端也在服務端。框架
componentDidMount:在第一次渲染後調用,只在客戶端。以後組件已經生成了對應的DOM結構,能夠經過this.getDOMNode()來進行訪問。 若是你想和其餘JavaScript框架一塊兒使用,能夠在這個方法中調用setTimeout, setInterval或者發送AJAX請求等操做(防止異步操做阻塞UI)。異步
componentWillReceiveProps :組件接收到一個新的 prop (更新後)時被調用。這個方法在初始化render時不會被調用。this
shouldComponentUpdate:返回一個布爾值。在組件接收到新的props或者state時被調用。在初始化時或者使用forceUpdate時不被調用。 能夠在你確認不須要更新組件時使用。component
componentWillUpdate:在組件接收到新的props或者state但尚未render時被調用。在初始化時不會被調用。htm
componentDidUpdate:在組件完成更新後當即調用。在初始化時不會被調用。生命週期
componentWillUnmount:在組件從 DOM 中移除以前馬上被調用。ip
我的記錄get
參考資料:
http://www.runoob.com/react/react-component-life-cycle.html
https://reactjs.org/docs/react-component.html#lifecycle-methods