5-2.Angular 入門教學 - 生命週期鉤子簡介與檢視封裝

Angular 入門教學


元件的生命週期

在Angular中Component有定義數個生命週期鉤子

那這些鉤子是要用來作什麼的呢?

主要就是在實作中,你可能需要在不同的階段,做不同的處理

所以angular就定義了各個階段的HOOK METHOD讓我們可以依照需求,在裡面寫上相關的處理程序

例如,我想要在畫面初始化時做某件事情,我就可以在以下ngOnInit區塊中寫上相關處理程序

ngOnInit(): void {
  //寫在這邊
}

但我這邊就不先帶大家看全部的生命週期鉤子解說

因為如果沒有一個對應的範例,單單就只是演示的話,很難融入情境

所以相關的解說,先放到後面有遇到的時候,在一併的講解

當然,你可以先至官方文件看看有哪些鉤子,先有一個概念即可

檢視封裝

這是Component裡的css樣式,是否會溢出到別的Component的一種設定

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss'],
  encapsulation: ViewEncapsulation.Emulated,
})

在上述的@Component可以宣告一個encapsulation,預設為 ViewEncapsulation.Emulated,另外有ViewEncapsulation.None及ViewEncapsulation.ShadowDom

  1. ViewEncapsulation.Emulated:css只會作用在自己的Component之中。
  2. ViewEncapsulation.ShadowDom :css作用在自己的Dom內,僅適用於內建支援 shadow DOM 的瀏覽器。並非所有瀏覽器都支援它,這就是為什麼 ViewEncapsulation.Emulated 是推薦和預設模式的原因
  3. ViewEncapsulation.None:則是會將此Component的css變為全域的作用,但實務上應該不會這麼做

所以乖乖的用預設就好,那我們現在就知道有這樣的設定就好,其實不需要有所修改

想看更多的廢話,可以看影片

參考資料: 
生命週期鉤子 
檢視封裝  




Copyright © 凱哥寫程式 2022 | Powered by TalllKai ❤