InfoLens / client /src /ts /utils /errorUtils.ts
dqy08's picture
initial beta release
494c9e4
/**
* 错误处理工具函数
*/
import { DemoFormatError } from './localFileUtils';
import { tr } from '../lang/i18n-lite';
/**
* 从错误对象中提取错误消息
* 支持多种错误类型,提供统一的错误消息提取接口
*
* @param error 错误对象(可能是 Error、DemoFormatError、SyntaxError 等)
* @param defaultMessage 默认错误消息(当无法提取时使用)
* @returns 错误消息字符串
*/
export function extractErrorMessage(error: unknown, defaultMessage: string): string {
if (error instanceof DemoFormatError) {
return error.message;
}
if (error instanceof SyntaxError) {
return tr('File is not a valid JSON format');
}
if (error instanceof Error) {
return error.message;
}
return defaultMessage;
}
/**
* 将可与翻译表精确匹配的 API/后端英文错误转为当前界面语言。
* 带数字等变化内容的错误一般不翻译,保持服务端返回的英文。
*/
export function translateApiErrorMessage(message: string): string {
return tr(message);
}