俗話說,人靠衣裝,馬靠鞍。官網首頁是產品或公司的臉面,必須要大氣。 原來舊版的支付寶首頁,有個大視頻作為頁面背景一直播放展示,效果很贊,所以實現了下 先看看效果: 亮點部分 大視頻是絕對定位,定在最下麵,上面的文字是絕對定位,定在最上面。還加了一層半透明的div藍色調。 文案的居中是使用的 disp ...
1.angular 組件生命周期鉤子執行過程
組件初始化過程中,生命周期鉤子執行順序:
- constructor()構造函數,初始化class,(constructor不屬於Angular生命周期鉤子的範疇,這裡只是說明組件組件初始化會先調用構造函數)。
- ngOnChanges()--如果組件沒有輸入屬性(@Input()),或者使用時沒有提供任何輸入屬性,那麼angular不會調用它;會調用多次。
- ngOnInit()--只調用一次,一般用來初始化數據,如請求數據。
- ngDoCheck()--緊跟在每次執行變更檢測時的ngOnChanges()和首次執行變更檢測的ngOnInit()後調用;會調用多次。
- ngAfterContentInit()--當Angular把外部內容投影進組件視圖或指令所在的視圖之後調用,第一次ngDoCheck()之後調用,只調用一次。
- ngAfterContentChecked()--每當Angular檢查完被投影到組件或指令中的內容之後調用,在ngAfterContentInit()和每次ngDoCheck()之後調用,會調用多次。
- ngAfterViewInit()--當Angular初始化玩玩組件視圖及其子視圖之後調用,只調用一次。
- ngAfterViewChecked()--當Angular做完組件視圖和子視圖的變更檢測之後調用;在ngAfterViewInit()和每次ngAfterContentChecked()之後調用,會調用多次。
- ngOnDestroy()--當Angular每次銷毀組件或指令之前調用並清掃。在這裡取消訂閱可觀察對象和分離事件處理器,以防記憶體泄漏。
2.angular 父子組件生命周期鉤子過程
父子組件生命周期鉤子執行順序,如下圖所示
1.首先調用父組件的構造函數,然後調用子組件的構造函數。
2.當調用父組件的ngAfterContentChecked()鉤子之後,會調用子組件的生命周期函數。
3.子組件的ngAfterContentChecked()鉤子執行完之後,會在調用子組件的子組件的生命周期鉤子(如果有的話)。
4.子組件執行ngAfterViewChecked()鉤子後,父組件繼續執行其餘的生命周期鉤子。
5.當發生變更檢測時,父組件先觸發ngDoCheck() => ngAfterContentChecked(),然後子組件觸發 ngOnChanges() => ngDoCheck() => ngAfterContentChecked() => ngAfterViewChecked(),最後父組件調用ngAfterViewChecked()。