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