如何在角度中使用onbefore unload事件

时间:2017-09-26 06:50:31

标签: angular

我有两条路线员工列表和主屏幕。在员工列表路线中,我有一个用于添加新员工的组件。我将在对话框中显示该组件。如果用户点击浏览器后退按钮,则不保存更改我需要得到用户的确认。 我尝试使用onbeforeunload事件

    @HostListener('window:beforeunload', ['$event'])
    public doSomething($event) {
      console.log('do I see this?');
      return false;
    }

但问题是当我打开对话框并单击浏览器后退按钮时未调用事件。仅在我重新加载页面时调用它然后显示确认。 我想要实现的是当用户点击浏览器后退按钮时,我想向用户显示我的确认对话框。有人请告诉我如何实现这个目标?

1 个答案:

答案 0 :(得分:0)

在component.ts文件中尝试以下内容:

import { Component, Input, HostListener } from '@angular/core';

@HostListener('window:beforeunload', ['$event'])
beforeUnloadHander(event) {
    return false;
}