问题:当使用Angular Material的Dialog或Overlay组件时,在关闭后有时无法立即响应用户的交互,必须再次点击DOM才能使页面重新启用。这可能很困扰并影响用户体验。
添加以下代码以确保在Overlay上解除绑定:
overlayRef.backdropClick().subscribe(() => {
// workaround for https://github.com/angular/components/issues/8146
// detach the overlay (and thus the backdrop) from the DOM manually
overlayRef.detachBackdrop();
// dispose the overlay
overlayRef.dispose();
});
然后在代码中使用OverlayRef以便能够直接访问backdropClick()订阅。这将允许在单击背景时立即解除叠层并重新启用交互。