vue阻止當前頁面瀏覽器后退行為


z最近做項目調試登錄功能,用戶在登錄之后仍然可以通過

瀏覽器的后退按鈕返回到登錄頁,這就比較蛋疼了,

雖然可以用replace動態跳轉,但是那只是權宜之計,

並不能解決問題,用戶體驗也不會變好,所以:

 

只需要在禁止返回的頁面的mounted函數中加上

  history.pushState(null, null, document.URL);
        window.addEventListener('popstate', function () {
            history.pushState(null, null, document.URL);
        });
這段代碼,就可以完美解決啦
【上面代碼有可能會出現  離開頁面后監聽事件清除不掉的情況】
所以后期推薦一款vue插件,開箱即用噢
Install:【npm install vue-prevent-browser-back --save】
下載完成后,在需要使用的頁面這樣:

import preventBack from 'vue-prevent-browser-back';//組件內單獨引入
export default {
   mixins: [preventBack],//注入

ok這樣離開頁面后就不會對其他頁面造成影響了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM