Angular 2 中的服務注入:綜合指南
將服務注入組件是 Angular 2 中的一項基本任務。然而,問題出現了:我們如何將服務注入到元件之外的其他服務?讓我們探索實現這一目標的有效方法。
要將服務注入到服務中,我們需要在每個要注入的服務上使用 @Injectable 裝飾器。此裝飾器允許在目前執行鏈的注入器中建立或檢索相應的類型實例。
Angular 2 應用程式採用注入器的分層樹,其中每個注入器都連結到特定的元件。當 @Injectable 裝飾器套用至類別時,Angular 2 會嘗試在註入器樹中建立或取得該類別的實例。
考慮以下應用程序結構:
在此場景中,當ChildComponent 時 初始化,Angular 2 定位Service1 在
嘗試注入 Service2,發生相同的注入器尋找過程。因此,我們可以根據所需的共享範圍在應用程式的各個層級注入服務。 如果在應用程式層級定義提供者,則建立的實例將在整個應用程式中共用,包括所有元件和服務。透過在元件層級定義提供程序,實例僅限於元件本身、其子元件以及依賴關係鏈中涉及的服務。
這種分層注入機制提供了組織和管理依賴關係的彈性。為了更全面的理解,請參閱 Angular 2 關於分層依賴注入的文檔。
以上是如何在 Angular 2 中將服務注入到其他服務中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!