feat: 登录时,直接从用户信息中,获取菜单。目的:加快首页的加载速度
							parent
							
								
									b885e078d8
								
							
						
					
					
						commit
						28ae5f793e
					
				|  | @ -8,7 +8,6 @@ enum Api { | |||
|   GetTenantIdByName = '/system/tenant/get-id-by-name?name=', | ||||
|   LoginOut = '/system/auth/logout', | ||||
|   GetUserInfo = '/system/auth/get-permission-info', | ||||
|   GetAsyncRoutes = '/system/auth/list-menus', | ||||
|   GetCaptcha = '/system/captcha/get', | ||||
|   CheckCaptcha = '/system/captcha/check' | ||||
| } | ||||
|  | @ -33,11 +32,6 @@ export function getUserInfo() { | |||
|   return defHttp.get({ url: Api.GetUserInfo }) | ||||
| } | ||||
| 
 | ||||
| // 路由
 | ||||
| export function getAsyncRoutes() { | ||||
|   return defHttp.get({ url: Api.GetAsyncRoutes }) | ||||
| } | ||||
| 
 | ||||
| // 获取登录验证码
 | ||||
| export function sendSmsCode(mobile, scene) { | ||||
|   return defHttp.post({ | ||||
|  |  | |||
|  | @ -1,14 +0,0 @@ | |||
| import { defHttp } from '@/utils/http/axios' | ||||
| import { getMenuListResultModel } from './model/menuModel' | ||||
| 
 | ||||
| enum Api { | ||||
|   GetMenuList = '/system/auth/list-menus' | ||||
| } | ||||
| 
 | ||||
| /** | ||||
|  * @description: Get user menu based on id | ||||
|  */ | ||||
| 
 | ||||
| export function getMenuList() { | ||||
|   return defHttp.get<getMenuListResultModel>({ url: Api.GetMenuList }) | ||||
| } | ||||
|  | @ -9,8 +9,3 @@ export interface RouteItem { | |||
|   caseSensitive?: boolean | ||||
|   children?: RouteItem[] | ||||
| } | ||||
| 
 | ||||
| /** | ||||
|  * @description: Get menu return value | ||||
|  */ | ||||
| export type getMenuListResultModel = RouteItem[] | ||||
|  |  | |||
|  | @ -1,3 +1,5 @@ | |||
| import { RouteItem } from './menuModel' | ||||
| 
 | ||||
| /** | ||||
|  * @description: Login interface parameters | ||||
|  */ | ||||
|  | @ -31,6 +33,7 @@ export interface LoginResultModel { | |||
| export interface GetUserInfoModel { | ||||
|   roles: string[] | ||||
|   permissions: string[] | ||||
|   menus: RouteItem[] | ||||
|   // 用户id
 | ||||
|   user: userModel | ||||
| } | ||||
|  |  | |||
|  | @ -16,7 +16,6 @@ import { useI18n } from '@/hooks/web/useI18n' | |||
| import { useMessage } from '@/hooks/web/useMessage' | ||||
| import { filter } from '@/utils/helper/treeHelper' | ||||
| import projectSetting from '@/settings/projectSetting' | ||||
| import { getMenuList } from '@/api/base/menu' | ||||
| import { PageEnum } from '@/enums/pageEnum' | ||||
| import { PermissionModeEnum } from '@/enums/appEnum' | ||||
| 
 | ||||
|  | @ -216,7 +215,7 @@ export const usePermissionStore = defineStore('app-permission', { | |||
|           // 这个功能可能只需要执行一次,实际项目可以自己放在合适的时间
 | ||||
|           let routeList: AppRouteRecordRaw[] = [] | ||||
|           try { | ||||
|             routeList = (await getMenuList()) as AppRouteRecordRaw[] | ||||
|             routeList = userInfo.menus as AppRouteRecordRaw[] | ||||
|           } catch (error) { | ||||
|             console.error(error) | ||||
|           } | ||||
|  | @ -233,7 +232,6 @@ export const usePermissionStore = defineStore('app-permission', { | |||
|           routeList = routeList.filter(routeRemoveIgnoreFilter) | ||||
|           routeList = flatMultiLevelRoutes(routeList) | ||||
|           routes = [PAGE_NOT_FOUND_ROUTE, dashboard, ...routeList, about] | ||||
|           console.info(routes) | ||||
|           break | ||||
|       } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 xingyu
						xingyu