angular4學習記錄 -- 依賴注入

Angular4 依賴注入

什麼是依賴注入

是指程序運行過程當中,若是須要調用另外一個對象協助時,無須在代碼中建立被調用者,而是依賴於外部的注入app

angular中依賴注入的具體使用

注入器:

在組件中的constructor中:ide

constructor(private productService: ProductService){}

提供器:

在app根組件module中或者在在組件中:code

1. providers:[productService]  等價於 第二種
2. providers: [{provider: ProductService, useClass: ProductService}] 
3. priveders: [{provide: ProductService, useFactory: () => {}}]

三種聲明式提供器對象

  1. userClass
  2. userFactory
  3. userValuetoken

注入器中指定的productService類型是providers中的provider,而provider使用的class是productService,因此注入器中productService的類型就是ProductService。

提供器做用域規則

1.提供器聲明在模塊時是對全部組件是可見的,全部組件均可以注入。
2.當一個提供器聲明在組件時,只對他聲明的組件和子組件可見,其餘組件不可注入。
3.當聲明在模塊的提供器和組件的提供器具備相同的token時,聲明在組件的提供器會覆蓋模塊的提供。
4.服務提供器優先聲明在模塊中,只有服務必須在某個組件可見,對其餘組件不可見時才聲明在組件中作用域

相關文章
相關標籤/搜索