一般你会这样写

router.beforeEach((to, from, next) => { const isLogin = sessionStorage.getItem('loginData') if (isLogin) { next() } else { next('/error') } })
这样会造成死循环,解决办法

router.beforeEach((to, from, next) => { const isLogin = sessionStorage.getItem('loginData') if (isLogin) { next() } else { if (to.path === '/login') { //这就是跳出循环的关键 next() } else { next('/login') } } })