Skip to content

Commit 61dbb05

Browse files
authored
Merge pull request #40 from vbenjs/small-change
refactor: small refactor in @vben-core/request
2 parents c4c8103 + 102249e commit 61dbb05

File tree

4 files changed

+16
-13
lines changed

4 files changed

+16
-13
lines changed

apps/web-antd/src/router/guard.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,9 @@ function setupAccessGuard(router: Router) {
9292

9393
// 生成路由表
9494
// 当前登录用户拥有的角色标识列表
95-
let userRoles: string[] = [];
9695
const userInfo =
9796
accessStore.userInfo || (await accessStore.fetchUserInfo());
98-
userRoles = userInfo.roles ?? [];
97+
const userRoles = userInfo.roles ?? [];
9998

10099
// 生成菜单和路由
101100
const { accessibleMenus, accessibleRoutes } = await generateAccess({

packages/@core/forward/request/src/request-client/request-client.ts

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ import type {
66
InternalAxiosRequestConfig,
77
} from 'axios';
88

9-
import type { MakeAuthorizationFn, RequestClientOptions } from './types';
9+
import type {
10+
MakeAuthorizationFn,
11+
MakeErrorMessageFn,
12+
RequestClientOptions,
13+
} from './types';
1014

1115
import { $t } from '@vben-core/locales';
1216
import { merge } from '@vben-core/toolkit';
@@ -20,7 +24,8 @@ import { FileUploader } from './modules/uploader';
2024
class RequestClient {
2125
private instance: AxiosInstance;
2226
private makeAuthorization: MakeAuthorizationFn | undefined;
23-
private options: RequestClientOptions;
27+
private makeErrorMessage: MakeErrorMessageFn | undefined;
28+
2429
public addRequestInterceptor: InterceptorManager['addRequestInterceptor'];
2530
public addResponseInterceptor: InterceptorManager['addResponseInterceptor'];
2631
public download: FileDownloader['download'];
@@ -40,12 +45,12 @@ class RequestClient {
4045
// 默认超时时间
4146
timeout: 10_000,
4247
};
43-
const { makeAuthorization, ...axiosConfig } = options;
44-
this.options = options;
48+
const { makeAuthorization, makeErrorMessage, ...axiosConfig } = options;
4549
const requestConfig = merge(axiosConfig, defaultConfig);
4650

4751
this.instance = axios.create(requestConfig);
4852
this.makeAuthorization = makeAuthorization;
53+
this.makeErrorMessage = makeErrorMessage;
4954

5055
// 实例化拦截器管理器
5156
const interceptorManager = new InterceptorManager(this.instance);
@@ -111,9 +116,8 @@ class RequestClient {
111116
} else if (error?.message?.includes?.('timeout')) {
112117
errMsg = $t('fallback.http.requestTimeout');
113118
}
114-
const { makeAuthorization, makeErrorMessage } = this.options;
115119
if (errMsg) {
116-
makeErrorMessage?.(errMsg);
120+
this.makeErrorMessage?.(errMsg);
117121
return Promise.reject(error);
118122
}
119123

@@ -128,7 +132,7 @@ class RequestClient {
128132

129133
case 401: {
130134
errorMessage = $t('fallback.http.unauthorized');
131-
makeAuthorization?.().unAuthorizedHandler?.();
135+
this.makeAuthorization?.().unAuthorizedHandler?.();
132136
break;
133137
}
134138
case 403: {
@@ -150,7 +154,7 @@ class RequestClient {
150154
}
151155
}
152156

153-
makeErrorMessage?.(errorMessage);
157+
this.makeErrorMessage?.(errorMessage);
154158
return Promise.reject(error);
155159
},
156160
);

packages/@core/forward/request/src/request-client/types.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ type MakeAuthorizationFn = (
1616
config?: InternalAxiosRequestConfig,
1717
) => MakeAuthorization;
1818

19-
type ErrorMessageFn = (message: string) => void;
19+
type MakeErrorMessageFn = (message: string) => void;
2020

2121
interface RequestClientOptions extends CreateAxiosDefaults {
2222
/**
@@ -26,7 +26,7 @@ interface RequestClientOptions extends CreateAxiosDefaults {
2626
/**
2727
* 用于生成错误消息
2828
*/
29-
makeErrorMessage?: ErrorMessageFn;
29+
makeErrorMessage?: MakeErrorMessageFn;
3030
}
3131

3232
interface HttpResponse<T = any> {
@@ -42,6 +42,7 @@ interface HttpResponse<T = any> {
4242
export type {
4343
HttpResponse,
4444
MakeAuthorizationFn,
45+
MakeErrorMessageFn,
4546
RequestClientOptions,
4647
RequestContentType,
4748
};

packages/@core/ui-kit/shadcn-ui/src/components/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// 修改过的button
21
export * from './alert-dialog';
32
export * from './avatar';
43
export * from './back-top';

0 commit comments

Comments
 (0)