我在router / index.js中有以下代码。如果令牌为空,则出现此错误Uncaught (in promise) RangeError: Maximum call stack size exceeded
const Router = new VueRouter({
...
})
Router.beforeEach((to, from, next) => {
const token = Cookies.getItem('token')
if (token === null) {
Router.push('/login')
} else {
next()
}
})
return Router
我做错了什么吗?
请勿使用此:
if (token === null) {
Router.push('/login')
}
根据文件的导航卫士。
if (token === null && to.name !== 'login') {
next({
path: '/login'
})
}
您也可以将路由器发送给它的名称:next({name: 'login'})
请参阅:Vue Router
并确保您导出了路由器:
export default Router