構成パラメータに基づいて、特定のサービスをコンポーネントに注入する必要があります。私が見るすべての例は、実際には特定のサービスを使用し、コンポーネントの構築時に使用します。実行時にコンポーネントのAngular 2サービスを選択する方法
実行時にこの注入を実行する方法はありますか?
構成パラメータに基づいて、特定のサービスをコンポーネントに注入する必要があります。私が見るすべての例は、実際には特定のサービスを使用し、コンポーネントの構築時に使用します。実行時にコンポーネントのAngular 2サービスを選択する方法
実行時にこの注入を実行する方法はありますか?
あなたは
@NgModule({
providers: [
ConfigService,
{ provide: APP_BASE_HREF, useFactory: loadConfig, deps: [ConfigService] },
],
...
いくつかの構成に応じて別のインスタンスを返すファクトリを使用することができますもHow to pass parameters rendered from backend to angular2 bootstrap method
function myServiceFactory(config:ConfigService) {
switch(config.someProp) {
case 'someValue': return new ClassA();
default: return new ClassB();
}
}
@Component({
providers: [
{ provide: MyService, useFactory: myServiceFactory, deps: [ConfigService] }
],
...
MyServiceとConfigServiceはどこに定義されていますか? angleCoreの一部ですか? – reza
いいえ、これはカスタムクラスの名前の例です –
はいを参照してください。 'injector.get()' RTM、https://angular.io/docs/ts/latest/guide/dependency-injection.html – estus
すばやく正確な返信をいただきありがとうございます。構成パラメータの値に基づいてそのスキームを使用できると思います。 – reza