Angular ViewChildren не получает дочерние элементы, нарисованные * ngTemplateOutlet - PullRequest
0 голосов
/ 05 июля 2018

Я передаю templateRef от одного компонента к другому и хочу получить доступ к компоненту, нарисованному внутри компонента-оболочки

<wrapper [template]="myTpl"></wrapper>

<ng-template #myTpl>
  <hello></hello>
  <hello></hello>
</ng-template>

Я хочу получить доступ к HelloComponent внутри компонента оболочки

@Component({
  selector: 'wrapper',
  template: `
        <ng-container *ngTemplateOutlet="template"></ng-container>
  `
})
export class WrapperComponent {
  @Input() template: TemplateRef<any>;

  @ViewChildren(HelloComponent)
  set comps(val: QueryList<HelloComponent>) {
    console.log('setter in wrapper ', val.length);
  }  
}

Но всегда 0.

Если я пытаюсь получить доступ к тому же в app.component.ts, я получаю значение !! Как я могу получить доступ к HelloComponent внутри компонента оболочки?

код доступен по адресу - https://stackblitz.com/edit/angular-gtwcx7

...