feat(i18n): add internationalization support across multiple components

This commit is contained in:
2025-10-29 16:40:20 +08:00
parent 184c232cc8
commit 9199ed7c29
34 changed files with 1455 additions and 761 deletions

View File

@@ -17,6 +17,7 @@ import {
Error as ErrorIcon,
Help as ConfirmIcon,
} from '@mui/icons-material';
import { useTranslation } from 'react-i18next';
import { type IDialogInstance } from '../../interfaces/common';
interface DialogComponentProps {
@@ -26,6 +27,7 @@ interface DialogComponentProps {
const DialogComponent: React.FC<DialogComponentProps> = ({ dialog, onClose }) => {
const [loading, setLoading] = useState(false);
const { t } = useTranslation();
const { config } = dialog;
// 获取对话框图标
@@ -118,7 +120,7 @@ const DialogComponent: React.FC<DialogComponentProps> = ({ dialog, onClose }) =>
<Box sx={{ display: 'flex', alignItems: 'center', flex: 1 }}>
{getDialogIcon()}
<Typography variant="h6" component="span">
{config.title || '提示'}
{config.title || t('dialog.defaultTitle')}
</Typography>
</Box>
<IconButton
@@ -145,7 +147,7 @@ const DialogComponent: React.FC<DialogComponentProps> = ({ dialog, onClose }) =>
variant="outlined"
disabled={loading}
>
{config.cancelText || '取消'}
{config.cancelText || t('common.cancel')}
</Button>
)}
<Button
@@ -155,7 +157,7 @@ const DialogComponent: React.FC<DialogComponentProps> = ({ dialog, onClose }) =>
disabled={loading}
sx={{ ml: 1 }}
>
{loading ? '处理中...' : (config.confirmText || '确定')}
{loading ? t('dialog.processing') : (config.confirmText || t('common.confirm'))}
</Button>
</DialogActions>
</Dialog>