Angular2 -- 生命週期鉤子

組件生命週期鉤子

指令和組件的實例有一個生命週期:新建、更新和銷燬。
每一個接口都有惟一的一個鉤子方法,它們的名字是由接口名加上 ng前綴構成的。好比,OnInit接口的鉤子方法叫作ngOnInit
指令和組件
ngOnInit:當Angular初始化完成數據綁定的輸入屬性後,用來初始化指令或者組件。
ngOnChanges:當Angular設置了一個被綁定的輸入屬性後觸發。該回調方法會收到一個包含當前值和原值的changes對象。
ngDoCheck:用來檢測全部變化(不管是Angular自己能檢測仍是沒法檢測的),並做出相應行動。在每次執行「變動檢測」時被調用。
ngOnDestory:在Angular銷燬指令或組件以前作一些清理工做,好比退訂可觀察對象和移除事件處理器,以避免致使內存泄漏。
只適用於組件
ngAfterContentInit:當Angular把外來內容投影進本身的視圖以後調用。
ngAfterContentChecked:當Angular檢查完那些投影到本身視圖中的外來內容的數據綁定以後調用。
ngAfterViewInit:在Angular建立完組件的視圖後調用。
ngAfterViewChecked:在Angular檢查完組件視圖中的綁定後調用。code

生命週期的順序

  • ngOnChanges:當被綁定的輸入屬性的值發生變化時調用,首次調用必定會發生在ngOnInit以前。
  • ngOnInit:在第一輪ngOnChanges完成以後調用。
  • ngDoCheck:在每一個Angular變動檢測週期中調用。
  • ngAfterContentInit:當把內容投影進組件以後調用。
  • ngAfterContentChecked:每次完成被投影組件內容的變動檢測以後調用。
  • ngAfterViewInit:初始化完組件及其子視圖以後調用。
  • ngAfterViewChecked:每次作完組件視圖和子視圖的變動檢測以後調用。
  • ngOnDestroy:當Angular每次銷燬指令/組件以前調用。
做者:Yeaseon 連接:https://www.jianshu.com/p/8f4c15186d7b 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索