解决方法 把 next() 换成router.push 就不会报错了
router.beforeEach((to, from, next) => {
const meta = to.meta ? to.meta : {}
const permission = meta.permission ? meta.permission : []
const hasLogin = !localStorage.login_token && to.path !== '/' && permission.includes('login')
if (hasLogin) {
// next('/login')
router.push('/login')
} else {
next()
}
})