diff --git a/src/router/index.ts b/src/router/index.ts index 941269c..a4969d8 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -7,8 +7,7 @@ import { storeToRefs } from "pinia"; import { useUserInfoStore } from "@/store/modules/user-info"; import { useRoutesListStore } from "@/store/modules/route-list"; import { useRoutingMethod } from "@/hooks/useRoutingMethod"; -// import { useRoute } from "vue-router"; -// const route = useRoute(); + /** * 创建vue的路由示例 * @method createRouter(options: RouterOptions): Router @@ -29,11 +28,10 @@ const router = createRouter({ /** * 路由加载前需要判断用户是否登录 - * 1、是否有网络,有则放行,没有则跳转500,提示网络断开 - * 2、去登录页,无token,放行 - * 3、没有token,直接重定向到登录页 - * 4、去登录页,有token,直接重定向到home页 - * 5、去非登录页,有token,校验是否动态添加过路由,添加过则放行,未添加则执行路由初始化 + * 1、去登录页,无token,放行 + * 2、没有token,直接重定向到登录页 + * 3、去登录页,有token,直接重定向到home页 + * 4、去非登录页,有token,校验是否动态添加过路由,添加过则放行,未添加则执行路由初始化 * 注意: * 全局routeTree不能持久化缓存 * 页面刷新会导致addRoute动态添加的路由失效,需要重新初始化路由 @@ -44,11 +42,7 @@ router.beforeEach(async (to, from, next) => { const { token } = storeToRefs(store); console.log("去", to, "来自", from); // next()内部加了path等于跳转指定路由会再次触发router.beforeEach,内部无参数等于放行,不会触发router.beforeEach - // 浏览器离线,条件:网络离线、跳转路径非 /500 - // 这里拦截的是在无网络情况下的正常跳转,跳转500 - if (!navigator.onLine && to.path !== "/500") { - next("/500"); // 跳转500 - } else if (to.path === "/login" && !token.value) { + if (to.path === "/login" && !token.value) { // 1、去登录页,无token,放行 next(); } else if (!token.value) { @@ -60,10 +54,6 @@ router.beforeEach(async (to, from, next) => { // 项目内的跳转,处理跳转路由高亮 currentlyRoute(to.name as string); } else { - // 无网络,跳转500,放行 - if (!navigator.onLine && to.path == "/500") { - return next(); - } // 4、去非登录页,有token,校验是否动态添加过路由,添加过则放行,未添加则执行路由初始化 const routeStore = useRoutesListStore(pinia); const { routeTree } = storeToRefs(routeStore); @@ -93,7 +83,7 @@ router.beforeEach(async (to, from, next) => { }); // 路由跳转错误 -router.onError(error => { +router.onError((error: any) => { NProgress.done(); console.warn("路由错误", error.message); });