首页 > 解决方案 > 如何在浏览器刷新时等待服务器的响应以将这些数据保存在 localStorage 中?

问题描述

在浏览器/页面刷新时,我需要将一些数据保存到 localStorage,以便角度路由中每个页面的数据在刷新后都可以通过 localStorage 获得。下面没有 setTimeout 的代码按预期工作。

@HostListener('window:beforeunload', ['$event'])
  beforeunloadHandler(event) {
    setTimeout(()=>{  
      localStorage.setItem('test','test123');
 }, 3000);
    event.returnValue = false
  }

但是,在从服务器获取数据期间/之前发生刷新的情况下。为此,我需要等待浏览器刷新,直到数据来自服务器。上面的代码仅在取消点击浏览器刷新警告的重新加载时设置localStorage中的项目。 在此处输入图像描述

如何在重新加载时执行它?谢谢。

标签: angulartypescriptlocal-storagesettimeoutpage-refresh

解决方案


推荐阅读