首页 > 解决方案 > dialogref.afterclosed() 结果为空 Angular 8

问题描述

我想将数据从对话框传递到父组件,但结果为空。这是我的对话框模板:

<mat-form-field class="example-full-width">
      <input [(ngModel)]="data.animalData" matInput placeholder="Favorite food" value="Sushi">
</mat-form-field>

这是我的父组件 ts :

export interface DialogData {
  aze:any;
}

openDialog(az:any) {
  let dialogRef = this.dialog.open(MyDialogComponent, {
    width: '100px',
    data: {aze:this.az}
  });
  dialogRef.afterClosed().subscribe(result => {
    this.azz = result;
  })
}

我想将 data.animalData 传递给结果,但我把它弄空了。

请注意 :console.log(this.data.animalData);在对话框组件中不为空。

标签: angulartypescriptangular8

解决方案


只需将返回值添加到按钮的 mat-dialog-close 属性,如下所示:

<button mat-raised-button [mat-dialog-close]="data.animalData" type="button" class="Discard-btn">
    Cancel
</button>

推荐阅读