2016-07-26 6 views
0

Angular 2.0 소스 코드 검색 (@angular/core": "2.0.0-rc.4) 처음에는 두 개의 provider.d.ts 정의가 포함되어있는 것으로 밝혀졌지만 다른 측면은이 provider.d.ts 파일의 모든 클래스와 많은 등록 정보가 @deprecated으로 표시되어 있습니다.Angular 2.0 DI API가 @deprecated로 표시된 이유는 무엇입니까?

node_modules\@angular\core\src\di\provider.d.ts 

node_modules\@angular\core\esm\src\di\provider.d.ts 

저는 앵귤러 컴포넌트 밖에서 각도 2.0 DI를 사용하는 방법을 찾고있었습니다. Angular 2.0은 매우 진보 된 상태 (Release Candidate)이기 때문에 API의 대부분은 약간의 사소한 변경이있을 가능성이 있으므로 이미 안정적이어야합니다. DI에서 관련된이 모든 클래스는 여전히 비추천으로 표시됩니다. 같은 시간에 인터넷의 모든 자습서와 예제는 내 질문에이 provider.d.ts 파일의 클래스를 사용합니다. 이 @deprecated 플래그가 의미하는 바는이 provider.d.ts 파일에서 API를 사용하거나 그렇지 않으면 안됩니까?

답변

1

비 프리미티브 제공자를 추가하는 새로운 방법

providers: [MyMockClass, {provide: MyClass, useExisting: MyMockClass}] 

useValue, useFactory, useClass, multi 같은 문자 구문을 목적으로하기 때문에 또한 useExisting 이외에 지원되는 파라미터이다.