Как использовать трубы в загруженных компонентах Angular Dynami c? - PullRequest
0 голосов
/ 09 июля 2020

Мне нужно загрузить несколько компонентов динамическим c способом. Вот почему я создал родительский компонент для выполнения этой работы (в зависимости от значения this.rink), например:

ngAfterViewInit() {
    switch (this.rink) {
        case 'ITCO':
            this.templateFreetext = FreetextITCOComponent;
            break;

        case 'INH':
            this.templateFreetext = FreetextINHComponent;
            break;

        default:
            this.templateFreetext = FreetextBERComponent;
            break;
    }

    const cfr = AppInjector.get(ComponentFactoryResolver);
    const factory = cfr.resolveComponentFactory(this.templateFreetext);
    this.componentRef = container.createComponent(factory);
    
    this.componentRef.instance.data = data;
    this.componentRef.changeDetectorRef.detectChanges();
}

Это работает хорошо, но по какой причине я не могу используйте любые каналы внутри шаблона HTML из templateFreetext.

    ...
    <div class="text-right text-warning">
        {{ data.day | date:'EEEE, dd.MM.yyyy' }}
    </div>
    ...

Это возвращает Error: The pipe 'date' could not be found!

Мой вопрос теперь в том, как я могу использовать динамические c созданные компоненты и каналы ? Что я забыл?

...