私はangular2を学んでおり、時には依存関係をどこに注入するのかちょっと混乱しています。 RouteParams
角2依存注射 - 依存関係を挿入する場所を知る方法
import {RouteParams} from 'angular2/router';
を使用している場合たとえば、同じように私たちはコンストラクタメソッドに渡し、我々は行ってもいいです:
constructor(private _photoService: PhotoService, private _routeParams: RouteParams){
}
しかし、私たちは同じモジュールからROUTER_DIRECTIVES
を使う'angular2/router'
import {ROUTER_DIRECTIVES} from 'angular2/router';
ディレクティブの配列に渡す必要があります:
directives: [ROUTER_DIRECTIVES]
私の質問は、どのように私はそれを渡す必要があるのか、ディレクティブまたはプロバイダーの配列に依存関係を渡すのか、またはコンストラクターメソッドに渡すのですか?
ディレクティブの場合、 'declarations'(' directives'ではなく!)です。彼らがプロバイダであれば、それは 'プロバイダー 'です。コンストラクタに 'providers'で定義されていないプロバイダを渡すと、エラーが発生します。それはそれと同じくらい簡単です。あなたは本当に非難されるいくつかの例(アルファまたはベータ)のコードを使用しています。私は古いチュートリアルではなく、RTMに提案します。ディレクティブもプロバイダも、ルータモジュールからかなり長い間明示的にインポートする必要はありません。 – estus
'ROUTER_DIRECTIVES'はかなり古くなっています。どの角度バージョンを使用していますか? 'RouterModule'で' @NgModule() 'の' imports:[...] 'に移動します。 –