角材料MatDialog未被正确销毁

时间:2019-06-20 17:02:49

标签: angular angular-material

我退出我的MatDialog视图时出现问题,无法正确销毁。第一次正常工作。然后退出并再次弹出对话框。将创建两个叠加层。第三单击,三个覆盖。我相信我没有正确地破坏物体或某些东西,但是在Angular Material网站上找不到任何东西,或者在互联网上找不到任何东西。

正在创建的多个对话框的屏幕截图:

enter image description here

调用对话框的代码:

better-sqrt-iter

在这种情况下,我可以明确采取措施以确保适当销毁吗?

import { MatDialog } from '@angular/material';

constructor(dialog: MatDialog) {}

const dialogRef = this.dialog.open(StockDetailComponent,
        {
            data: {
                      ticker: ticker, stockDetail: results, intraDayChartAvailable: intraDayChartAvailable,
                      dailyChartAvailable: dailyChartAvailable, weeklyChartAvailable: weeklyChartAvailable,
                      monthlyChartAvailable: monthlyChartAvailable
                  }
        });

对话框代码:

dialogRef.afterClosed()

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以订阅afterClosed来破坏对话框。

dialogRef.afterClosed().subscribe(x => {
   dialogRef = null;
});