当我调用 MatDialogRef 实例的函数 close 时,对话框应该关闭,但它没有。
我有一个名为 ShareModule 的模块,其中包含 HeaderCompose 和 LoginComponent。HeaderComponent 使用 LoginComponent 来对话。
<div class="HomeHeader-userinfo-2-nbm"><img class="HomeHeader-portrait-xqqY2"
src="/assets/img/header-portrait.png"><span class="HomeHeader-login-D2hkS"
style="color: rgb(253, 85, 83);"><span (click)="openDialog()">Login</span> | <span
(click)="openDialog()">Register</span></span>
</div>
TS:
constructor(public dialog: MatDialog) { }
openDialog(): void {
const dialogRef = this.dialog.open(LoginComponent, {
panelClass: 'custom-dialog-container',
data: {name: 'alo', animal: 'dog'}
});
dialogRef.afterClosed().subscribe(result => {
console.log('The dialog was closed');
});
}
在 LoginComponent 我有一个这样的按钮:
<div class="Login-close-j_-2T" [mat-dialog-close]="true" (click)="onNoClick()"><img src="/assets/img/login-close.png"></div>
和 TS:
constructor(public dialogRef: MatDialogRef<LoginComponent>,
@Inject(MAT_DIALOG_DATA) public data: any) { }
onNoClick(): void {
this.dialogRef.close();
}
我将 ShareModuel 导入一个名为 HomeModule 的模块并使用 HeaderComponent。
当我按下一个按钮时,对话框显示,但是当我按下关闭按钮时,它应该关闭但它没有。我试过 [mat-dialog-close] 但它仍然不起作用。