首先是普朗克
本质上,我有一个动态的选项卡控件。将有任意数量的选项卡,每个选项卡将包含从这个“延迟加载”组件继承的组件。我希望实现的功能是,当用户单击该选项卡时,它将从选项卡中包含的任何组件中调用“loadData”。
我尝试使用@ViewChild或@ContentChild访问子组件,但我尝试的任何操作似乎都不起作用。
选项卡的模板是:
<div [hidden]="!active" class="pane">
<ng-content></ng-content>
</div>在选项卡组件中属性'active‘的setter上,我希望调用元素中持有的任何组件的.loadData()方法。这能实现吗?
发布于 2017-04-03 13:30:46
对我来说很管用
ngAfterContentInit() {
if(this.component) {
this.component.loadData();
}
}
@ContentChild(DelayLoadComponent) component: DelayLoadComponent;但是它不会延迟加载组件。
也许您希望添加一个只在选项卡处于活动状态时将组件添加到DOM中的*ngIf。
https://stackoverflow.com/questions/43185568
复制相似问题