打開一個頁面a,然后token過期,自動跳回登錄頁,通過路由傳參的方式將頁面a的路徑傳給登錄頁,登錄成功之后,在使用參數(shù)跳轉回頁面a,但是這時候頁面a右上角有一個返回按鈕,里面是$router.back(),這時候點擊返回按鈕,就直接返回了登錄頁,然后登陸之后又返回頁面a,頁面a點擊返回又回到登錄頁,一直往復循環(huán),請問有沒有什么好的解決方案
1 回答

縹緲止盈
TA貢獻2041條經(jīng)驗 獲得超4個贊
建議你這樣試試看:
登錄頁跳轉到A頁面的時候使用router.replace方法, 替換掉當前的路由棧
在A頁面寫路由守衛(wèi)beforeRouteLeave鉤子函數(shù),判斷將要去的頁面是否為登錄頁面,如果是則不執(zhí)行next方法
兩種方式的優(yōu)劣
第一種方式比較簡單直接,而且代碼較容易維護
第二種路由守衛(wèi)的方式雖然可以解決問題單有點殺雞用牛刀的意味了,針對你的需求,從代碼維護角度考慮,有點成本。
添加回答
舉報
0/150
提交
取消