我要在关闭上一个浏览器选项卡时注销我的应用程序。我在应用程序组件中添加了[[@HostListener。安慰tabcount在构造函数中给出了打开的选项卡的确切计数,但不明白为什么我的条件不符合我的要求。目前,它总是让我注销。
app.component.ts
constructor(
private authService: AuthService
) {
console.log(tabCount.tabsCount());
}
// Handle session on browser tab close . . .
@HostListener('window:beforeunload', ['$event'])
public beforeunloadHandler($event) {
console.log(tabCount.tabsCount());
if (localStorage.getItem('rememberMe') == null){
if (tabCount.tabsCount() == 1){
console.log(tabCount.tabsCount());
this.authService.logout();
}
}
}
注销方法:
logout(): void {
$('.modal').modal('hide');
localStorage.removeItem('accessToken');
localStorage.removeItem('session_data');
this.router.navigate(['/login']);
}