2016-10-26 6 views
-1

サービスのコンポーネントを取得する方法を教えてもらえますか? 例:サービスにおけるcomponentAで (任意成分であってもよい)サービスのコンポーネントを取得する方法

service.call(); 

call(){ 
    how to get component instance or viewContainerRef? 
} 
+2

なぜ引数として渡すだけではありませんか? –

答えて

1

一つの方法は、あなたのコンポーネントがインターフェイスを実装することです。サービスメソッドに引数を渡すことができます。入力引数の型は、あなたのインタフェースにタイプされるべきです。

//component example 
class MyComponent implements IComponent { 
    someCommonMethodName(){} // method required by interface 
} 

//service method 
doWhatever(component: IComponent) { 
    component.someCommonMethodName(); // you can trust that this method exists 
}