场景:我有一个名为add-customer
的组件,它通过单击一个名为Add
的按钮显示在对话窗口中,如下图所示。
我在这里有2个按钮1)Save
和2)Cancel
单击Cancel
按钮时,将出现另一个对话框,如下图所示。
在新的对话窗口中,我再次有两个分别称为1)Discard
和2)Cancel
的按钮
单击Cancel
后,新窗口将关闭,add-customer
组件将保持与下图相同。
这是我的要求:
1)单击dicard
按钮时,我想关闭两个对话窗口(意味着我要关闭两个弹出窗口)。
2)在这里,当我们在对话窗口之外单击时,add-customer
组件正在关闭,但是我希望仅在单击discard
按钮时才能关闭它。
我尝试通过为dialogRef
和discard
按钮提供两个不同的cancel
。没有结果。这是stackblitz链接。
答案 0 :(得分:2)
您可以尝试一下
导入MatDialog
import {MatDialogRef,MatDialog} from '@angular/material';
注入构造函数
constructor(private dialog: MatDialog,..){}
而cancelN方法应该是
public cancelN(): void {
this.dialog.closeAll();
}
注意:它将关闭所有打开的对话框
答案 1 :(得分:2)
我只是发布了这个有效的stackblitz示例,以便对下一个访问者有所帮助。