直接上代码
- router/index.js
import Vue from 'vue'
import Router from 'vue-router'
import Login from '@/components/page/Login'
import Main from '@/components/page/Main'
Vue.use(Router)
const router = new Router({
routes: [
{
path: '/login',
name: 'Login',
component: Login
},
{
path: '/main',
name: 'Main',
component: Main
}]
});
router.beforeEach((to, from, next) => {
if(to.name == "Login"){
console.log("请求login页面");
next();
}else if(this.token != null){
console.log("登录状态");
next();
}else{
console.log("未登录");
router.push({ name: 'Login' })
}
});
export default router;
一共有两个页面,一个登陆页面login,一个主页面main。关键在于
router.beforeEach((to, from, next) => {})