2016-11-02 2 views
1

가장 좋은 옵션이 무엇인지 잘 모르지만 여기에 나와 있습니다. 각도 2 - 클래스 (입력 스크립트)의 주사기

내가 다음 클래스

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'를 전달할 수 있고'생성자 (injector : Injector)와 같은'Order '를 사용하여 구체적인 종속성을 얻을 수 있습니다 {this.api = injector.get (ApiRequest); }'. 나는 이것이 당신의 상황에서 개선인지 모른다. –

+1

아마 내가 여러 종속성이있는 경우입니다. 감사. – keepwalking