我有A组件,可以打开材料对话框
组件A
openDialog(): void {
const dialogRef = this.dialog.open(**component B**, {
width: '1000px',
});
然后,我用于在该对话框中加载图像,并使用按钮上载,使用组件B将其上载到服务器。 现在,当我完成图像上传后,我想从组件B关闭该对话框。
组件B
onUpload() {
const fd = new FormData();
fd.append('image', this.selectedFile);
this.service.uploadImage(fd).subscribe(
(res:any)=>
{
//how to close dialog here ?
},
我该怎么做?
答案 0 :(得分:2)
Dialog | Angular Material Documentation:
通过MatDialog创建的组件可以注入MatDialogRef并使用它关闭包含它们的对话框。关闭时,可以提供可选的结果值。此结果值作为afterClosed承诺的结果转发
export class ComponentB {
constructor(
public dialogRef: MatDialogRef<DialogOverviewExampleDialog>
) {}
onUpload(): void {
// upload stuff
this.dialogRef.close();
}
}