Events 如何在Angular 2+;
我正在使用HostListener获取窗口关闭事件并尝试阻止该事件 我首先导入了HostListener并使用了这段代码。但是,我无法阻止窗口关闭事件Events 如何在Angular 2+;,events,angular5,onbeforeunload,Events,Angular5,Onbeforeunload,我正在使用HostListener获取窗口关闭事件并尝试阻止该事件 我首先导入了HostListener并使用了这段代码。但是,我无法阻止窗口关闭事件 import { HostListener } from '@angular/core'; @HostListener('window:beforeunload', ['$event']) onWindowClose(event: any): void { this.doSomething(); } 您可
import { HostListener } from '@angular/core';
@HostListener('window:beforeunload', ['$event'])
onWindowClose(event: any): void {
this.doSomething();
}
您可以使用HostListener防止单独组件的窗口关闭事件 首先在组件中导入HostListener
import { HostListener } from '@angular/core';
并且,使用此代码可防止车窗关闭
@HostListener('window:beforeunload', ['$event'])
onWindowClose(event: any): void {
// Do something
event.preventDefault();
event.returnValue = false;
}
现在,您的事件已被阻止。我使用了相同的,但它对我不起作用,并且没有错误showing@pal::在卸载事件之前将其包括在哪个组件中。在浏览器中打开该特定组件。然后关闭浏览器选项卡。它将向您显示警报弹出窗口。!再试一次。如果你有任何疑问,请告诉我。或者你能在电子邮件上显示你的代码吗?这里你说的是两个组件?@pal::是的。在我的项目中,我将此事件用于表单提交。如果用户输入表单组件,然后用户填写详细信息,然后用户尝试关闭该选项卡,我将首先检查表单。如果他/她输入了任何值。然后我阻止选项卡关闭。否则选项卡将关闭。我只对一个组件使用了这个。若要防止整个应用程序的选项卡关闭,可以在index.html文件上编写一些脚本(不带主机侦听器),也可以通过每个组件添加主机侦听器来实现。