diff --git a/frontend/mining-admin-web/src/lib/utils/format.ts b/frontend/mining-admin-web/src/lib/utils/format.ts index d2040ed9..9be81417 100644 --- a/frontend/mining-admin-web/src/lib/utils/format.ts +++ b/frontend/mining-admin-web/src/lib/utils/format.ts @@ -4,7 +4,11 @@ export function formatNumber(value: number | string | undefined | null, decimals if (value === undefined || value === null) return '-'; const num = typeof value === 'string' ? parseFloat(value) : value; if (isNaN(num)) return '-'; - return num.toLocaleString('zh-CN', { minimumFractionDigits: decimals, maximumFractionDigits: decimals }); + // 使用确定性格式化,避免 SSR hydration 错误 + const fixed = num.toFixed(decimals); + const parts = fixed.split('.'); + parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ','); + return parts.join('.'); } export function formatDecimal(value: string | number | undefined | null, precision = 8): string {