我正在尝试构建仅依赖于modals
的{{1}}库。
模态随服务一起打开,我通过CDK
使其以模态呈现。
以下是示例:https://stackblitz.com/edit/angular-ofzpks?file=src%2Fapp%2Fmodal.component.ts
在模式本身中,我正在使用工厂创建组件:
entryComponent
我有两个问题:
const compRef = this.componentFactoryResolver.resolveComponentFactory<any>(this.modalContentComponent);
const componentRef = this.modalContainer.createComponent(compRef);
componentRef.instance.ngOnInit();
,但是组件从不呈现它答案 0 :(得分:1)
在您的modal.component.ts
中,使用ngOnInit
代替ngAfterViewInit
:
ngOnInit() {
const compRef = this.componentFactoryResolver.resolveComponentFactory<any>(this.modalContentComponent);
const componentRef = this.modalContainer.createComponent(compRef);
componentRef.instance.name = this.data.name;
}
以这种方式进行操作意味着ngDoCheck
将运行并为您检测更改,因为ngDoCheck
直接在ngOnInit
之后运行。