index.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. // router/index.js
  2. import { createRouter, createWebHistory } from 'vue-router'
  3. import { ElMessage } from 'element-plus'
  4. const routes = [
  5. // 添加更多路由信息
  6. {
  7. path: "/401",
  8. component: () => import("@/pages/401/NotFind.vue"),
  9. meta: {
  10. name: "401"
  11. }
  12. },
  13. {
  14. path: "/login",
  15. component: () => import("@/pages/login/LoginNow.vue"),
  16. meta: {
  17. name: "login"
  18. }
  19. },
  20. {
  21. path: "/77",
  22. component: () => import("@/pages/mapLoad/FatherMap.vue")
  23. },
  24. {
  25. path: "/home",
  26. component: () => import("@/pages/home/HomePage.vue"),
  27. meta: {
  28. name: "home"
  29. },
  30. children: [
  31. {
  32. path: "/home/report",
  33. component: () => import("@/pages/report/ReportVue.vue"),
  34. meta: {
  35. name: "report"
  36. }
  37. },
  38. {
  39. path: "/home/mission",
  40. component: () => import("@/pages/mission/MissionVue.vue"),
  41. meta: {
  42. name: "mission"
  43. }
  44. },
  45. {
  46. path: "/home/int",
  47. component: () => import("@/pages/intMap/IntMap.vue"),
  48. meta: {
  49. name: "int"
  50. }
  51. },
  52. {
  53. path: "/home/scdMap",
  54. component: () => import("@/pages/scdCanLook/ScdCanLook.vue"),
  55. meta: {
  56. name: "scdMap"
  57. }
  58. }
  59. ]
  60. }
  61. ]
  62. const router = createRouter({
  63. history: createWebHistory(),
  64. routes,
  65. })
  66. router.beforeEach((to, from, next) => {
  67. // 假设您有一个名为 isAuthenticated 的全局变量来表示用户是否已登录
  68. let isAuthenticated = false; // 请替换为实际的登录状态判断逻辑
  69. let loginStatus = sessionStorage.getItem("loginStatus")
  70. if (loginStatus === 'true') {
  71. isAuthenticated = true
  72. }
  73. // 如果用户已登录,正常导航到目标路由
  74. if (isAuthenticated) {
  75. next();
  76. } else {
  77. ElMessage({
  78. type: "error",
  79. message: "您还未登录"
  80. })
  81. // 如果用户未登录,重定向到登录页
  82. if (to.path !== '/login') {
  83. next('/login');
  84. } else {
  85. // 如果用户已经在登录页,继续正常导航
  86. next();
  87. }
  88. }
  89. })
  90. export default router