Unverified 提交 17d16ae5 作者: mfish 提交者: GitHub

feat(axiosSuccess): 操作成功后根据传入提示模式进行相应 (#2326)

上级 9ae67bf9
...@@ -2,6 +2,7 @@ export default { ...@@ -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 { ...@@ -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'; ...@@ -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 = { ...@@ -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;
} }
......
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 { ...@@ -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;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论