Angular 5 - 浏览器关闭时清除本地存储

Kar*_*ran 1 angular angular5

我在我的 Web 应用程序中使用 Angular 5。每当用户关闭浏览器窗口时,我想清除 localStorage 对象。

 @HostListener("window:beforeunload", ["$event"])
clearLocalStorage(event) {
    localStorage.clear();
    console.log('####Destroy local storage####');
}
Run Code Online (Sandbox Code Playgroud)

由于应用程序中的其他逻辑(例如 SSO),我无法将上述代码粘贴到主app.component.ts中。

有没有办法,我可以使用不同的方法在角度应用程序中全局执行此操作。

请建议。

Gau*_*yay 5

对于您的情况,本地存储不是一个好的选择。

本地存储- 存储没有过期日期的数据,并且只能通过 JavaScript 清除,或清除浏览器缓存/本地存储的数据。

会话存储- 仅存储会话的数据,这意味着数据将一直存储到浏览器(或选项卡)关闭为止。

因此,请根据您的目的使用会话存储。浏览器关闭时它将自动清除。