30 lines
778 B
JavaScript
Raw Normal View History

2022-08-03 21:26:42 +08:00
import Vue from "vue";
import VueRouter from "vue-router";
2022-08-12 18:26:27 +08:00
import axios from "axios";
2022-08-02 10:16:07 +08:00
2022-08-03 21:26:42 +08:00
Vue.use(VueRouter);
2022-08-02 10:16:07 +08:00
const createRouter = () =>
new VueRouter({
2022-08-03 21:26:42 +08:00
scrollBehavior: () => ({ y: 0 }),
});
2022-08-02 10:16:07 +08:00
2022-08-03 21:26:42 +08:00
const router = createRouter();
router.beforeEach((to, from, next) => {
2022-08-12 18:26:27 +08:00
// console.log(to,next);
const token = localStorage.getItem("token");
// 目标路由不是登录页并且还需要token验证还没有token那就直接给返回到登录页
if (to.name !== "Login" && !token) {
next({ name: "Login" });
2022-08-03 21:26:42 +08:00
} else {
2022-08-12 18:26:27 +08:00
// 目标路由是登录页-自然不需要token验证
// 或目标路由不需要身份验证
// 又或目标路由非登录页需要token验证但是有token
// next放行
next();
2022-08-03 21:26:42 +08:00
}
});
export default router;