在Vue2.0中的路由鉤子主要是用來攔截導航,讓它完成跳轉或前取消,可以理解為路由守衛。本文主要為大家帶來一個Vue利用路由鉤子token過期後跳到登入頁的範例。小編覺得蠻不錯的,現在就分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。
分為全域導覽鉤子,單一路由獨享的鉤子,元件內鉤子。
三種 類型的鉤子只是用的地方不一樣,都接受一個函數作為參數,函數傳入三個參數,分別為to,from,next。
其中next有三個方法
(1)next(); //預設路由
(2)next(false); //阻止路由跳轉
(3)next({path:'/'}); //阻止預設路由,跳到指定路徑
這裡我使用了元件內鉤子進行判斷token過期後跳到登入頁,其他兩種鉤子可以去官網查看。
//路由前验证 beforeRouteEnter(to, from, next) { let postdata = { meta: { client_version: "1.0", client_type: "1", }, data: { access_token: $.cookie("authtoken").toString() } } $.ajax({ url: urls.serchuser, type: 'POST', data: JSON.stringify(postdata) }).done(data => { data = JSON.parse(data); console.log(data); if(data.status == 10050) { next(false); location.href = 'login.html'; }else{ next(); } }) }
實作方法很簡單,在路由前向伺服器發送請求,如果傳回的資料表示token過期則阻止預設跳轉,否則就正常跳轉。
相關推薦:
以上是Vue利用token過期後跳到登入頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!