鍍金池/ 問答/HTML/ vue-router的路由守衛(wèi)怎么跳轉(zhuǎn)路由?

vue-router的路由守衛(wèi)怎么跳轉(zhuǎn)路由?

我想用vue-router的導(dǎo)航守衛(wèi)定義一個(gè)全局守衛(wèi)來監(jiān)聽路由的變化
用于實(shí)現(xiàn)一個(gè)攔截進(jìn)入頁面,然后跳轉(zhuǎn)至登錄頁面的功能
可是我寫的總出錯(cuò),Google后沒有找到解決方案,請(qǐng)教教我如何做
報(bào)錯(cuò)信息:

clipboard.png

相關(guān)代碼:

clipboard.png

求幫忙,萬分感謝!

回答
編輯回答
空白格

clipboard.png

2017年1月13日 14:24
編輯回答
葬愛

死循環(huán)。
next('/login') 可以理解為重定向到/login。
所以還會(huì)進(jìn)入這個(gè)鉤子函數(shù),再次判斷的時(shí)候還會(huì)進(jìn)入if分支。

2017年5月16日 01:49
編輯回答
大濕胸

死循環(huán)了,beforeEach 意味著訪問所有路由都會(huì)執(zhí)行 next('/login'),訪問 /login 執(zhí)行 next('/login') 再訪問 /login 執(zhí)行 next('/login') 再訪問 /login 執(zhí)行 next('/login')...可以判斷 from.name 不為 login 時(shí)執(zhí)行 next('/login')

2017年1月19日 08:26
編輯回答
終相守
next({ path: '/login', replace: true })

應(yīng)該可以

2017年2月9日 09:52