原文: https://segmentfault.com/q/1010000010714863segmentfault
如今每一個頁面的左上角有一個返回按鈕<
點擊時的代碼是this.$router.back(-1),返回上一個路由
可是咱們如今有這樣一個需求,把其中某一頁分享出去,用戶打開時並無上一條路由的歷史記錄,因此點擊<按鈕時沒有反應。
因此應該怎麼判斷有沒有上一條路由的歷史記錄。
代碼:
routerback: function () {
this.$router.back(-1)
},
this
window.history.length是整個記錄數量,包括前進,不排除出現當前頁不是最後一條記錄spa
methods: {
back(){
if (window.history.length <= 1) { this.$router.push({path:'/'}) return false } else { this.$router.go(-1) } //上面都沒執行就說明卡在當前頁不是最後一條, histroy記錄數量大於1,又沒有回退記錄,只能返回首頁, //若是上面都執行了 頁面都跳走了,這個也就不用管了 setTimeout(() => { this.$router.push({path:'/'}) },500) } },