ionic3 动态加载组件

template:

<div  #child></div>

ts:

@ViewChild("child",{read:ViewContainerRef})  child:ViewContainerRef;
childComponent:ComponentRef<MonitoringDataComponent>;
childCompFactory:ComponentFactory<MonitoringDataComponent>

//加载组件
this.childCompFactory=this.resolver.resolveComponentFactory(MonitoringDataComponent);
this.childComponent=this.child.createComponent(this.childCompFactory); 

//销毁组件
this.childComponent.destroy();

声明周期:
在ionViewDidLoad,ionViewWillEnter,ionViewDidEnter这三个钩子函数中均可以加载,在constructor中无法加载,ViewContainerRef为undefind。

注意问题:
如果放在ngif或者ngswitch case中,则需要延时加载

获取子组件实例:

this.childComponent.instance
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容