Показать сообщение отдельно
  #2 (permalink)  
Старый 11.12.2017, 14:08
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

okuznetsov1,
А нужно ли? Создать динамический компонент не сложно. Достаточно найти фабрику этого компонента и передать её в метод createComponent элемента класса ViewContainerRef. После этого у вас будет ссылка на созданный компонент, через которую и можно передавать инпут параметры
constructor(private componentFactoryResolver: ComponentFactoryResolver) {}
...

createDynamicCompoenent() {
    const value = ['Red', 'Green', 'Blue'];
    const componentFactory = this.componentFactoryResolver.resolveComponentFactory('класс_компонента');
   const cmpRef = vcr.createComponent(factory);
   cmpRef.instance.colors = value;
}


Т.е. обычно такие вещи делают на уровне сервиса / компонента, но никак не на уровне фильтра. Потому что на каждый detectChanges будет создаваться этот самый компонент, что может убить производительность и привести к удивительным результатам.
Ответить с цитированием