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這樣離開頁面后就不會對其他頁面造成影響了