vue+axios在IE下頁面不刷新的問題

今天突然發現,在IE瀏覽器下,如果對頁面的表格記錄做增刪改操作,頁面不刷新,但是在Chrome和FireFox下卻很正常,溜溜的。

在IE裏,F12打開network監控請求,然後增刪改操作,發現每次post/put/get請求的返回值都是正常的,頁面也能夠正常刷新。但是關閉開發者工具,頁面又不刷新了。。。

我猜到了是IE的緩存問題,於是清除了緩存,設置了不緩存。刷新頁面,第一次加載頁面時能正常顯示剛剛增刪改的記錄。再次增刪改,頁面又不刷新了。。。

撞了邪了。苦思冥想,谷歌了一番,果然是IE的緩存機制在搗鬼。每次增刪改操作之後都有調用axios get請求去拿最新的數據,結果IE並沒有發送get請求,而是用了上次get到的老的結果。F12打開newwork查看的時候,卻是該怎麼請求就怎麼請求,無論如何都重現不出問題。怒摔!!

Stackoverflow上有好幾種建議,有的說是在把請求的url里加參數,每次附上一個時間戳來保證每次的URL不一樣,這樣IE就不會緩存而是認真重新發請求。算了,太麻煩了,我採用瞭如下的方法,把axios的緩存機制關掉,IE就可以正常刷新了。

axios.defaults.headers.get['Pragma'] = 'no-cache';
axios.defaults.headers.get['Cache-Control'] = 'no-cache, no-store'; 

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章