簡體   English   中英

如何使用 Angular 9 中的“延遲加載”使用子組件的事件屬性綁定父組件

[英]How to bind parent component using child component's event property using `lazy loading` in Angular 9

我正在使用 Angular 9 中的ivy compiler將一些組件轉換為lazily loaded

這是我目前的代碼:

<bulk-user-upload [visible]="bulkUserUploadVisible (fileUploaded)="onBulkUserUploadFileUploaded($event)">

我試圖修改代碼變成這樣:

<ng-container #bulkUserUpload></ng-container>

我想訪問子組件中存在的fileUploaded函數,以便我可以監聽父組件上的事件。

const { BulkUserUploadComponent } = await import('../bulk-user-upload/bulk-user-upload.component');
const bulkUserUploadFactory = this.cfr.resolveComponentFactory(BulkUserUploadComponent);
const { instance } = this.bulkUserUploadContainer.createComponent(bulkUserUploadFactory, null, this.injector);

instance.visible = true;

如何修改上面的代碼以便我可以訪問子函數?

所以我將它添加到我的父組件中

instance.fileUploaded.pipe(
      takeUntil(instance.destroy$)
    ).subscribe(resp => this.onBulkUserUploadFileUploaded(resp));

這給孩子destroy$ = new Subject();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM