ionic3 动态加载组件

template:

ts:

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

//加载组件
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

你可能感兴趣的:(ionic3 动态加载组件)