2016-11-02 71 views
1

不知道什麼是最好的選擇,但在這裏。Angular 2 - 類中的注入提供者(typescript)

我有下面的類

export class Order { 
    number?: any; 
    api?: ApiRequest; 
    constructor(number, api: ApiRequest) { 
     this.number = number; 
     this.api = api; 
    } 
} 

當我創造我使用的順序使用下列

let order new Order(123, this.request); 

ApiRequest是可注射的全球供應商。

當我創建一個新的對象時,有沒有一種方法可以自動將api提供程序注入類中?

回答

1

編號注入僅適用於由DI創建的實例,而不是如果您自己使用new Xxx()創建實例。

+0

那麼我使用的是我唯一的選擇? – keepwalking

+0

的確如此,如果你用'new Xxx()'創建一個實例,你就擁有了一切都可以自己傳入。你可以傳遞'Injector'並獲得具體的依賴關係,像''構造器(注入器:注入器){this.api = injector.get(ApiRequest); }'。我不知道這是否會改善您的情況。 –

+1

也許是如果我有多個依賴項。謝謝。 – keepwalking

相關問題