我有两个具有某种父子关系的对话框。Parent 是一个独立的对话框组件,而 child 是从创建的ng-template
现在,问题是,如果我matDialogClose
在ng-template
父对话框中使用,则子对话框是完整的。
这是为您准备的堆栈闪电战 https://stackblitz.com/edit/mat-dialog-example-vbxhc3
主对话框模板
<ng-template #nested>
hey, i am nested dialog, close me with the button
<button matDialogClose="someResult">CLOSE ME </button>
</ng-template>
打开子模板
@ViewChild("nested")
nestedTmplateRef;
private dialog:MatDialog
...
this.dialog.open(this.nestedTmplateRef);
我可以使用matCloseDialog
指令关闭子对话框吗?我有兴趣使用此解决方案,因为我知道其他明显的解决方法,例如从组件控制子对话框。但是,仅使用指令可以为我节省一些样板代码。我对角形材料组件有点生疏,可能我看不到明显的解决方案。