В проекте Angular 8 я создал некоторые динамические компоненты без viewref со следующим кодом:
const componentFactory = this.componentFactoryResolver.resolveComponentFactory(HelloComponent);
const componentRef = componentFactory.create(this.injector);
componentRef.changeDetectorRef.detectChanges();
componentRef.instance.slideContentRendered.pipe(first()).subscribe(x => {console.log('does not work', x);});
в самом HelloComponent я жду завершения некоторых асинхронных задач, а затем выдаю slideContentRendered, но я не попадаю в тело метода подписки.
Здесь вы можете увидеть пример приложения https://stackblitz.com/edit/angular-krx3y6
Как я могу получить доступ к выходам? Если я пытаюсь сделать то же самое с viewref со следующим кодом, он работает:
const componentRef = viewContainerRef.createComponent(componentFactory);
componentRef.instance.slideContentRendered.pipe(first()).subscribe(x => {console.log('it works', x);});