vue-router中
a頁面跳到b頁面,b頁面需要登錄,如果未登錄需要跳到登錄頁面,然後跳到b頁面,現在是可以跳到登錄頁面,但登入後要跳到的b頁面怎麼實現?因為b頁面不是一個固定的頁面,可能是退出頁面,用戶中心頁面等
PHP中文网2017-05-19 10:37:53
這個需要在登入頁面做處理,跳到登入頁面的時候
http://登录页面URL/login?from=${encodeURLComponent(location.href)}
這樣在登入頁面,你就能在queryString裡拿到這個from參數
認證完之後,根據這個from跳轉回去就OK了
为情所困2017-05-19 10:37:53
請參考vue-router官方文件上的router.beforeEach鉤子函數,可以用來實現你的功能。原理大概就是:
每次路由跳转都经过beforeEach这个钩子函数,里面的逻辑是若目的地是你需要先校验登录状态再跳转的页面,则检查登录态,检查通过则调用next(),否则跳转到登录页,并且带上的query是目的页面的fullPath,用于登录后跳转到目的页面用。
有疑問可以私聊溝通下~