我想以编程方式从JSON文件中生成由多个不同组件组成的报告:
{
components: [UserStatsComponent, ActivityChartComponent, NetworkGraphComponent]
}
我发现了这一点:Angular2:以编程方式创建子组件,但是我的用例有所不同,因为我需要表示不同类型的组件,所以我不能在模板中使用ngFor,因为并非每个组件都具有相同的指令。
我是Angular2的新手,所以我真的不知道该如何处理:首先,我想到了组件继承,但在扩展组件的类时,好像angular2注释未继承。也不知道如何使用合成来解决这个问题。
听说过有关内容标签的一些信息,但实际上并不知道它是否与此用例有关。
tldr; 如何动态插入数组中的不同组件?
要动态插入组件,请使用DynamicComponentLoader
@Component({
selector: 'child-component',
template: 'Child'
})
class ChildComponent {
}
@Component({
selector: 'my-app',
template: 'Parent (<child id="child"></child>)'
})
class MyApp {
constructor(dcl: DynamicComponentLoader, injector: Injector) {
dcl.loadAsRoot(ChildComponent, '#child', injector);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句