angular7 - 如何以角度提醒用户刷新

标签 angular7

alert 嗨,我想捕捉窗口刷新事件并通过消息提醒用户,但如果用户选择刷新,我想重定向到特定的 URL。请注意,我使用的是 Angular7。

@HostListener("window:beforeunload", ["$event"]) unloadHandler(event: Event) {
    console.log("Processing beforeunload...");
    // Do more processing...
    event.returnValue = false;
}   

好吧,我已经设法发出警报,但是 1.我要自定义对话框中的消息 2.当用户仍然点击重新加载按钮时,我想在点击时路由它。 但是警报是默认的,我不知道如何自定义。 会很感激一些帮助

最佳答案

你能试试这个吗

JavaScript

window.BeforeUnloadEvent = (ev) => {
    let result = confirm("Changes you made may not be saved.");
    if (result) {
        alert("process");
    } else {
        alert("stay on page");
    }
}

编辑::TypeScript

注意:此代码仅在我们使用 f5 刷新时有效。

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

@Component({
  selector: 'app-demo',
  templateUrl: './demo.component.html',
  styleUrls: ['./demo.component.css']
})

export class DemoComponent {

  constructor() {
  }

  @HostListener("window:beforeunload", ["$event"]) unloadHandler(event: Event) {
    let result = confirm("Changes you made may not be saved.");
    if (result) {
      // Do more processing...
    }
    event.returnValue = false; // stay on same page
  }
}

关于angular7 - 如何以角度提醒用户刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59489220/

相关文章:

javascript - 如何将文件字节码转换为文件形式数据

node.js - 从源 'http://localhost:3000/api/twitter-login' 访问 Twitter_OAuth_Url 处的 XMLHttpRequest(从 'null' 重定向)已被阻止

库中的 Angular 默认管道不起作用

angular - 使用 "browser refresh/reload"或 F5 刷新页面时拦截器未执行

javascript - 在 Angular 7 中提交后,手动为输入赋值不会影响 'ngForm.value'

在浏览器中输入有效网址时, Angular 路由会一直重定向到主页

angular - 如何在 Angular 7 模块设置中延迟加载模式

javascript - 为模板中的变量赋值 - Angular7

Angular 7 : ng test hangs , 不断重复运行测试

javascript - Renderer2 在 angular7 中继承时不工作