Angular如何区分刷新事件和关闭浏览器/关闭选项卡事件?
创始人
2024-10-29 07:30:50
0

Angular无法直接区分刷新事件和关闭浏览器/关闭选项卡事件,因此需要通过window对象的beforeunload事件和unload事件来实现区分。

在AppComponent的构造函数中,我们可以监听window对象的beforeunload和unload事件:

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

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  constructor() {
    window.addEventListener('beforeunload', (event) => {
      // 在window关闭之前执行的代码
    });
    window.addEventListener('unload', (event) => {
      // 在window关闭后执行的代码
    });
  }
}

在beforeunload事件中,我们可以设置一个变量,以便在unload事件中使用它来判断用户是刷新页面还是关闭浏览器/关闭选项卡:

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

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  private isRefresh: boolean;

  constructor() {
    window.addEventListener('beforeunload', (event) => {
      // 在window关闭之前执行的代码
      this.isRefresh = true;
    });
    window.addEventListener('unload', (event) => {
      // 在window关闭后执行的代码
      if (this.isRefresh) {
        console.log('刷新页面');
      } else {
        console.log('关闭浏览器/关闭选项卡');
      }
    });
  }
}

相关内容

热门资讯

玩家攻略推荐"福建兄... >>您好:福建兄弟十三冰修改器确实是有挂的,很多玩家在这款福建兄弟十三冰修改器游戏中打牌都会发现很多...
热点讨论"打哈儿脚本... 热点讨论"打哈儿脚本免费"开挂(工具)辅助工具有人有挂-2026新版总结 >>您好:软件加薇1367...
热点推荐"手机游戏挂... 热点推荐"手机游戏挂机辅助软件"开挂(神器)辅助神器有挂攻略-可靠教程 >>您好:软件加薇13670...
必备教程"微信卡五星... 您好:这款微信卡五星辅助器游戏是可以开挂的,确实是有挂的,很多玩家在这款微信卡五星辅助器游戏中打牌都...
一分钟揭秘"下载微乐... 一分钟揭秘"下载微乐小程序自建房透视"开挂(神器)辅助神器新版有挂-微扑克教程1、下载安装好下载微乐...
重要通知"衡阳丫丫字... 重要通知"衡阳丫丫字牌靠谱吗"开挂(安装)辅助安装有挂分享-黑科技教程;无需打开直接搜索薇:1367...
传递经验"pokem... 传递经验"pokemmo脚本辅助下载"开挂(平台)辅助平台了解有挂-玩家教程《详细加薇1367043...
推荐十款"掌中乐游戏... 推荐十款"掌中乐游戏辅助器"开挂(下载)辅助下载有挂教程-辅助教程;无需打开直接搜索加薇136704...
透视透视"决战卡五星... 透视透视"决战卡五星看牌器"开挂(下载)辅助下载有挂解惑-透视教程>>您好:软件加薇13670430...
实测必看"传送屋激k... 实测必看"传送屋激k万能辅助器app"开挂(安装)辅助安装有挂总结-AI教程 【无需打开直接搜索加薇...