构建完成后,我无法检测到关闭窗口。
const newWindow = window.open(url, '_blank', options);
newWindow.onbeforeunload = () => null;
newWindow.addEventListener('beforeunload', (evt: BeforeUnloadEvent) =>
{
console.log(evt)
}
);
在我进行构建之前它工作得很好,没有触发 beforeunload 事件。我还尝试在新窗口的组件中放置一个主机监听器:
@HostListener('window:beforeunload', [ '$event' ])
beforeUnloadHander(event: BeforeUnloadEvent): void {
debugger;
}
但这里也有同样的问题。构建完成后,我们不再到达调试器
有人知道我做错了什么吗?感谢您的帮助!
编辑解决方法
const heartBeatNewWindow = setInterval(() => {
if (newWindow.closed) {
this.canvasSettings.displayInNewWindow = false;
clearTimeout(heartBeatNewWindow);
}
}, 1500);