2017-08-31 227 views
0

私はこの問題が発生しています。ここではnext('/login')を使用できません。 (私は、次を使用する場合、それが動作next()を使用すると、Vue-router beforeEachが無限ループに陥る

*/ all imports that are needed 

Vue.use(Router); 

const routes = [ 
{path: '/', component: Home}, 
{path: '/admin', component: Admin}, 
{path: '/login', component: Login}] 

var route = new Router({ 
routes: routes, 
mode: 'history' }); 

route.beforeEach((to, from , next) => { 
console.log(to.fullPath) 
next('/login'); 
}); 

new Vue({ 
    el: '#app', 
    router: route, 
    template: '<App/>', 
    components: { 
    App 
    } 
}) 

)が、私は与えるとき)(次はあなたがする必要がある、それが無限ループ内で

console screenshot

答えて

0

を突っ込んだルート機能:これは私のコードですすでに'/login'に誘導している場合は、next('/login')に電話しないでください。例えば

route.beforeEach((to, from , next) => { 
    console.log(to.fullPath) 
    if (to.path !== '/login') { 
    next('/login'); 
    } else { 
    next(); 
    } 
}); 
+0

ありがとう!それを修正した –

関連する問題