如何使用会话存储以角度区分窗口关闭和窗口刷新

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用会话存储以角度区分窗口关闭和窗口刷新相关的知识,希望对你有一定的参考价值。

角度-我试图弄清楚如何区分浏览器窗口是关闭还是引用。两个选项均触发window:unload事件。我了解使用会话存储可以完成这项工作。我从未使用过它-有人可以提供示例吗?查看我当前的代码:当前正在使用:

@HostListener('window:unload', [ '$event' ])
unloadHandler(event) {
 //That's triggered on both refresh and close browser window
 }
答案

您确实可以使用会话存储。这里的技巧是,当选项卡或窗口关闭时,将清除会话存储。

因此,您可以做的是在页面加载时设置会话存储,如下所示:

if (!sessionStorage.getItem('isVisited')) {
  sessionStorage.setItem('isVisited', true);
} else {
  alert('Visited already');
}

以上代码仅在刷新时发出警报。

以上是关于如何使用会话存储以角度区分窗口关闭和窗口刷新的主要内容,如果未能解决你的问题,请参考以下文章

子窗口关闭,父窗口如何刷新

如何实现我另一个窗口关闭时,刷新这个窗口(C#中问题)

firefox下如何关闭子窗口刷新父窗口? - 技术问答

Selenium WebDriver .getWindowHandles()返回先前关闭的窗口,如何区分这些窗口和活动窗口?

使用R会话和并排窗口启动Emacs?

怎么实现父窗口打开子窗口,子窗口关闭后自动刷新父窗口?