學習React Native 筆記(三)React組件的生命週期

(一)初始化階段

  • getDefaultProps
  1.  獲取實例的默認屬性
  2. 只會在組件的第一個實例被初始化的時候調用
  3. 沒有調用實例也是會調用
  • getInitialState
  1. 獲取實例的初始化狀態
  • componentWillMount
  1. render之前最後一次修改狀態的機會
  • render
  1. 生產虛擬的DOM節點,JSX
  2. 只能訪問this.props和this.state
  3. 只有一個頂層組件
  4. 不允許修改狀態和DOM輸出
  • componentDidMount
  1. 成功render並渲染真實DOM之後觸發
  2. 可以修改DOM
  3. 組件在真正被裝載時調用
  4. 組件已經被渲染到頁面上


(二)運行中階段

  • componentWillReceiveProps
  1. 在組件將要接受到屬性時調用(接受前)
  2. 父組件修改屬性觸發,可以修改新屬性、修改狀態
  • shouldComponentUpdate
  1. 當組件在接受到新屬性時調用
  2. 詢問是否需要更新
  3. 返回false會阻止render調用
  • componentWillUpdate
  1. 不能修改屬性和狀態
  • render
  1. 同初始化render函數
  • componentDidUpdate
  1. 真正的DOM被渲染完之後調用
  2. 可以修改DOM


(三)銷燬階段

  • componentWillUnmount
  1. 銷燬操作真正執行前調用


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章