diff --git a/apps/web-antd/src/router/guard.ts b/apps/web-antd/src/router/guard.ts index ac0dbd1c..96aec056 100644 --- a/apps/web-antd/src/router/guard.ts +++ b/apps/web-antd/src/router/guard.ts @@ -92,10 +92,9 @@ function setupAccessGuard(router: Router) { // 生成路由表 // 当前登录用户拥有的角色标识列表 - let userRoles: string[] = []; const userInfo = accessStore.userInfo || (await accessStore.fetchUserInfo()); - userRoles = userInfo.roles ?? []; + const userRoles = userInfo.roles ?? []; // 生成菜单和路由 const { accessibleMenus, accessibleRoutes } = await generateAccess({ diff --git a/packages/@core/forward/request/src/request-client/request-client.ts b/packages/@core/forward/request/src/request-client/request-client.ts index 8974a5a4..00f896ce 100644 --- a/packages/@core/forward/request/src/request-client/request-client.ts +++ b/packages/@core/forward/request/src/request-client/request-client.ts @@ -6,7 +6,11 @@ import type { InternalAxiosRequestConfig, } from 'axios'; -import type { MakeAuthorizationFn, RequestClientOptions } from './types'; +import type { + MakeAuthorizationFn, + MakeErrorMessageFn, + RequestClientOptions, +} from './types'; import { $t } from '@vben-core/locales'; import { merge } from '@vben-core/toolkit'; @@ -20,7 +24,8 @@ import { FileUploader } from './modules/uploader'; class RequestClient { private instance: AxiosInstance; private makeAuthorization: MakeAuthorizationFn | undefined; - private options: RequestClientOptions; + private makeErrorMessage: MakeErrorMessageFn | undefined; + public addRequestInterceptor: InterceptorManager['addRequestInterceptor']; public addResponseInterceptor: InterceptorManager['addResponseInterceptor']; public download: FileDownloader['download']; @@ -40,12 +45,12 @@ class RequestClient { // 默认超时时间 timeout: 10_000, }; - const { makeAuthorization, ...axiosConfig } = options; - this.options = options; + const { makeAuthorization, makeErrorMessage, ...axiosConfig } = options; const requestConfig = merge(axiosConfig, defaultConfig); this.instance = axios.create(requestConfig); this.makeAuthorization = makeAuthorization; + this.makeErrorMessage = makeErrorMessage; // 实例化拦截器管理器 const interceptorManager = new InterceptorManager(this.instance); @@ -111,9 +116,8 @@ class RequestClient { } else if (error?.message?.includes?.('timeout')) { errMsg = $t('fallback.http.requestTimeout'); } - const { makeAuthorization, makeErrorMessage } = this.options; if (errMsg) { - makeErrorMessage?.(errMsg); + this.makeErrorMessage?.(errMsg); return Promise.reject(error); } @@ -128,7 +132,7 @@ class RequestClient { case 401: { errorMessage = $t('fallback.http.unauthorized'); - makeAuthorization?.().unAuthorizedHandler?.(); + this.makeAuthorization?.().unAuthorizedHandler?.(); break; } case 403: { @@ -150,7 +154,7 @@ class RequestClient { } } - makeErrorMessage?.(errorMessage); + this.makeErrorMessage?.(errorMessage); return Promise.reject(error); }, ); diff --git a/packages/@core/forward/request/src/request-client/types.ts b/packages/@core/forward/request/src/request-client/types.ts index 0c7753a9..c1d832c3 100644 --- a/packages/@core/forward/request/src/request-client/types.ts +++ b/packages/@core/forward/request/src/request-client/types.ts @@ -16,7 +16,7 @@ type MakeAuthorizationFn = ( config?: InternalAxiosRequestConfig, ) => MakeAuthorization; -type ErrorMessageFn = (message: string) => void; +type MakeErrorMessageFn = (message: string) => void; interface RequestClientOptions extends CreateAxiosDefaults { /** @@ -26,7 +26,7 @@ interface RequestClientOptions extends CreateAxiosDefaults { /** * 用于生成错误消息 */ - makeErrorMessage?: ErrorMessageFn; + makeErrorMessage?: MakeErrorMessageFn; } interface HttpResponse { @@ -42,6 +42,7 @@ interface HttpResponse { export type { HttpResponse, MakeAuthorizationFn, + MakeErrorMessageFn, RequestClientOptions, RequestContentType, }; diff --git a/packages/@core/ui-kit/shadcn-ui/src/components/index.ts b/packages/@core/ui-kit/shadcn-ui/src/components/index.ts index 020efc98..7b43ff8b 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/components/index.ts +++ b/packages/@core/ui-kit/shadcn-ui/src/components/index.ts @@ -1,4 +1,3 @@ -// 修改过的button export * from './alert-dialog'; export * from './avatar'; export * from './back-top';