如何在Angular 2+中使用HostListener防止窗口关闭事件

时间:2018-11-28 07:01:00

标签: events angular5 onbeforeunload

我正在使用HostListener来获取窗口关闭事件并尝试阻止该事件。

我首先导入了HostListener并使用了此代码。但是,我无法阻止窗口关闭事件。

  import { HostListener } from '@angular/core';

  @HostListener('window:beforeunload', ['$event'])
   onWindowClose(event: any): void {

       this.doSomething();

   }

1 个答案:

答案 0 :(得分:0)

您可以使用 HostListener 阻止单独组件的窗口关闭事件。

首次导入组件中的HostListener

import { HostListener } from '@angular/core';

并且,使用此代码可防止窗口关闭。

  @HostListener('window:beforeunload', ['$event'])
   onWindowClose(event: any): void {
    // Do something

     event.preventDefault();
     event.returnValue = false;

  }

现在,您的活动已被阻止。