Parcourir la source

fix: 修复路由解析错误并优化路由拦截器逻辑

张涛 il y a 1 an
Parent
commit
1ff3305e69
2 fichiers modifiés avec 7 ajouts et 2 suppressions
  1. 0 1
      src/router/guard.js
  2. 7 1
      src/utils/permission.js

+ 0 - 1
src/router/guard.js

@@ -11,7 +11,6 @@ router.beforeEach((to, from, next) => {
   const isLoginPage = to.path === '/login'; // 判断目标路径是否为登录页
   const isInWhiteList = whiteList.includes(to.path); // 检查目标路径是否在白名单中
   const hasAccess = accessFlatRoutes.some((route) => route.path == to.path);
-
   // 用户已授权的情况
   if (isAuthorized) {
     if (isLoginPage) {

+ 7 - 1
src/utils/permission.js

@@ -78,7 +78,13 @@ export const flattenRoutes = (routes) => {
 };
 
 // 获取有权限的路由
-const routesList = JSON.parse(localST_RoutesList.getItem());
+let routesList = [];
+try {
+  routesList = JSON.parse(localST_RoutesList.getItem());
+} catch (error) {
+  console.error('路由解析错误:', error);
+}
+
 const formattedRoutes = formatRoutes(routesList);
 export const accessRoutes = formattedRoutes;