從以前的章節咱們瞭解到,組件的掛載指的是將組件渲染而且構造 DOM 元素而後插入頁面的過程。這是一個從無到有的過程,React.js 提供一些生命週期函數能夠給咱們在這個過程當中作一些操做。html
除了掛載階段,還有一種「更新階段」。說白了就是 setState
致使 React.js 從新渲染組件而且把組件的變化應用到 DOM 元素上的過程,這是一個組件的變化過程。而 React.js 也提供了一系列的生命週期函數可讓咱們在這個組件更新的過程執行一些操做。react
這些生命週期在深刻項目開發階段是很是重要的。而要徹底理解更新階段的組件生命週期是一個須要經驗和知識積累的過程,你須要對 Virtual-DOM 策略有比較深刻理解才能徹底掌握,但這超出了本書的目的。本書的目的是爲了讓你們快速掌握 React.js 核心的概念,快速上手項目進行實戰。因此對於組件更新階段的組件生命週期,咱們簡單說起而且提供一些資料給你們。git
這裏爲了知識的完整,補充關於更新階段的組件生命週期:github
shouldComponentUpdate(nextProps, nextState)
:你能夠經過這個方法控制組件是否從新渲染。若是返回 false
組件就不會從新渲染。這個生命週期在 React.js 性能優化上很是有用。componentWillReceiveProps(nextProps)
:組件從父組件接收到新的 props
以前調用。componentWillUpdate()
:組件開始從新渲染以前調用。componentDidUpdate()
:組件從新渲染而且把更改變動到真實的 DOM 之後調用。你們對這更新階段的生命週期比較感興趣的話能夠查看官網文檔。算法
但這裏建議你們能夠先簡單瞭解 React.js 組件是有更新階段的,而且有這麼幾個更新階段的生命週期便可。而後在深刻項目實戰的時候逐漸地掌握理解他們,如今並不須要對他們放過多的精力。性能優化
有朋友對 Virtual-DOM 策略比較感興趣的話,能夠參考這篇博客:深度剖析:如何實現一個 Virtual DOM 算法 。對深刻理解 React.js 核心算法有必定幫助。函數