在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue監(jiān)聽關閉頁面 在關閉頁面前發(fā)送axios請求 如何先發(fā)送請求 再關閉頁面

vue監(jiān)聽關閉頁面 在關閉頁面前發(fā)送axios請求 如何先發(fā)送請求 再關閉頁面

現在碰到的問題就是關閉頁面時axios請求總提交不了,請問有什么解決的方法么?

        window.addEventListener('beforeunload', function() {
      beforeUnloadTimestamp = new Date().getTime();
  })

  window.addEventListener('unload', function() {
    beforeUnloadTimestamp = beforeUnloadTimestamp || 0;
    localStorage.setItem('onload', new Date().getTime());
    // 測試chrome和ie11 得出,chrome,IE11 // 刷新時 chrome >=11ms ,ie11 >=2ms 左右, 在關閉時,chrome間隔在 >=2ms,IE11 >=3000ms
    if (isIE) {
      if (new Date().getTime() - beforeUnloadTimestamp > 500) {
        isClose = true;
      }
    } else {
      if (new Date().getTime() - beforeUnloadTimestamp < 5) {
        isClose = true;
      }
    }
    
    if (isClose) {
      axios.get('/au/logout').then(res => {
        window.sessionStorage.clear();
      });
      localStorage.setItem('close', new Date().getTime());
    }else{
      localStorage.setItem('refresh', new Date().getTime());
    }
  })
回答
編輯回答
孤影

可以將ajax請求改成同步請求,請求返回后再關閉頁面

2017年1月27日 10:46
編輯回答
撥弦

沒有。請求是異步的,unload 不會等你請求返回才繼續(xù)。

2018年3月14日 05:38