import router from "./router";
import { getToken } from "@/utils/auth";

const whiteList = [
  "/check",
  '/login'
];

router.beforeEach((to, from, next) => {
  // 验证 TOKEN
  if (getToken()) {
    /* 登录成功 */
    if (to.path === '/login') {
      next({ path: "/" });
    } else {
      next();
      // if (store.getters.roles.length === 0) {
      //   // 判断当前用户是否已拉取完user_info信息
      //   store.dispatch("GetInfo")
      //     .then(() => {
      //       store.dispatch("GenerateRoutes").then((accessRoutes) => {
      //         // 根据roles权限生成可访问的路由表
      //         router.addRoutes(accessRoutes); // 动态新建可访问路由表
      //         next({...to, replace: true}); // hack方法 确保addRoutes已完成
      //       });
      //     })
      //     .catch((err) => {
      //       store.dispatch("LogOut").then(() => {
      //         Message.error(err);
      //         next({path: "/"});
      //       });
      //     });
      // } else {
      //   next();
      // }
    }
  } else {
    /* 未登录 */
    if (whiteList.indexOf(to.path) !== -1) {
      // 在免登录白名单，直接进入
      next();
    } else {
      next(`/login`);
    }
  }
});
