如何访问 Angular 中的子包对象

How to get access to child package object in Angular

我在app.component.html

中使用了一个包
    <app-my-test2 *ngIf="data" #MyTest2Component></app-my-test2>

这里是 app-my-test2 包。 (使用 ngPackager)

并在app.component.ts

中使用了
@ViewChild('MyTest2Component', {static: true}) myTest2Component: MyTest2Component;

之前,将 app-my-test2 转换为包,一切正常,我访问 app-my-test2“this” , 但 将 app-my-test2 转换为 package 后,"this" 返回 undefind

问题出在我的 *ngIf 上。 *ngIf 指令正在终止我的控件组件,所以我无法引用它。

前面提到的问题是导致视图未定义的 ngIf。答案是使用 ViewChildren 而不是 ViewChild。我遇到了类似的问题,在加载所有参考数据之前我不想显示网格。

 @ViewChildren("MyTest2Component") public myTest2Component: QueryList<MyTest2Component>


public ngAfterViewInit() {

    this.myTest2Component.changes.subscribe((comps: QueryList <MyTest2Component>) =>
    {
        console.log(comps.first) ;
    });

}

document