2016-10-26 4 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 
} 
Смежные вопросы