mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-02-02 18:28:40 +08:00
feat(axiosSuccess): 操作成功后根据传入提示模式进行相应 (#2326)
This commit is contained in:
parent
9ae67bf9ca
commit
17d16ae545
@ -2,6 +2,7 @@ export default {
|
||||
api: {
|
||||
operationFailed: 'Operation failed',
|
||||
errorTip: 'Error Tip',
|
||||
successTip: 'Success Tip',
|
||||
errorMessage: 'The operation failed, the system is abnormal!',
|
||||
timeoutMessage: 'Login timed out, please log in again!',
|
||||
apiTimeoutMessage: 'The interface request timed out, please refresh the page and try again!',
|
||||
|
@ -2,6 +2,7 @@ export default {
|
||||
api: {
|
||||
operationFailed: '操作失败',
|
||||
errorTip: '错误提示',
|
||||
successTip: '成功提示',
|
||||
errorMessage: '操作失败,系统异常!',
|
||||
timeoutMessage: '登录超时,请重新登录!',
|
||||
apiTimeoutMessage: '接口请求超时,请刷新页面重试!',
|
||||
|
@ -22,7 +22,7 @@ import axios from 'axios';
|
||||
|
||||
const globSetting = useGlobSetting();
|
||||
const urlPrefix = globSetting.urlPrefix;
|
||||
const { createMessage, createErrorModal } = useMessage();
|
||||
const { createMessage, createErrorModal, createSuccessModal } = useMessage();
|
||||
|
||||
/**
|
||||
* @description: 数据处理,方便区分多种处理方式
|
||||
@ -56,6 +56,15 @@ const transform: AxiosTransform = {
|
||||
// 这里逻辑可以根据项目进行修改
|
||||
const hasSuccess = data && Reflect.has(data, 'code') && code === ResultEnum.SUCCESS;
|
||||
if (hasSuccess) {
|
||||
let successMsg = message;
|
||||
if (successMsg === null || successMsg === undefined || successMsg === '') {
|
||||
successMsg = '操作成功';
|
||||
}
|
||||
if (options.successMessageMode === 'modal') {
|
||||
createSuccessModal({ title: t('sys.api.successTip'), content: successMsg });
|
||||
} else if (options.successMessageMode === 'message') {
|
||||
createMessage.success(successMsg);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
3
types/axios.d.ts
vendored
3
types/axios.d.ts
vendored
@ -1,4 +1,5 @@
|
||||
export type ErrorMessageMode = 'none' | 'modal' | 'message' | undefined;
|
||||
export type SuccessMessageMode = ErrorMessageMode;
|
||||
|
||||
export interface RequestOptions {
|
||||
// Splicing request parameters to url
|
||||
@ -18,6 +19,8 @@ export interface RequestOptions {
|
||||
urlPrefix?: string;
|
||||
// Error message prompt type
|
||||
errorMessageMode?: ErrorMessageMode;
|
||||
// Success message prompt type
|
||||
successMessageMode?: SuccessMessageMode;
|
||||
// Whether to add a timestamp
|
||||
joinTime?: boolean;
|
||||
ignoreCancelToken?: boolean;
|
||||
|
Loading…
Reference in New Issue
Block a user