|
- import router from "@/router";
- import { useUserStoreHook } from "@/store/modules/user";
- import { usePermissionStoreHook } from "@/store/modules/permission";
-
- import NProgress from "nprogress";
- import "nprogress/nprogress.css";
- NProgress.configure({ showSpinner: false }); // 进度条
-
- const permissionStore = usePermissionStoreHook();
-
- // 白名单路由
- const whiteList = ["/login", "/signSucceed"];
-
- // router.beforeEach(async (to, from, next) => {
- // NProgress.start();
- // // const hasToken = localStorage.getItem("accessToken");
- // // if (hasToken) {
- // // if (to.path === "/login") {
- // // // 如果已登录,跳转首页
- // // next({ path: "/" });
- // // NProgress.done();
- // // } else {
- // // const userStore = useUserStoreHook();
- // // const hasRoles = userStore.roles && userStore.roles.length > 0;
- // // if (hasRoles) {
- // // // 未匹配到任何路由,跳转404
- // // if (to.matched.length === 0) {
- // // from.name ? next({ name: from.name }) : next("/404");
- // // } else {
- // // next();
- // // }
- // // } else {
- // // try {
- // // const { roles } = await userStore.getInfo();
- // // const accessRoutes = await permissionStore.generateRoutes(roles);
- // // accessRoutes.forEach((route) => {
- // // router.addRoute(route);
- // // });
- // // next({ ...to, replace: true });
- // // } catch (error) {
- // // // 移除 token 并跳转登录页
- // // await userStore.resetToken();
- // // next(`/login?redirect=${to.path}`);
- // // NProgress.done();
- // // }
- // // }
- // // }
- // // } else {
- // // // 未登录可以访问白名单页面
- // // if (whiteList.indexOf(to.path) !== -1) {
- // // next();
- // // } else {
- // // next(`/login?redirect=${to.path}`);
- // // NProgress.done();
- // // }
- // // }
- // });
-
- // router.afterEach(() => {
- // NProgress.done();
- // });
|