import { useEffect, useState } from 'react' import { Card, Form, Input, Button, Switch, Radio, InputNumber, message, Typography, Space } from 'antd' import { SaveOutlined } from '@ant-design/icons' import { apiService } from '../services/api' import type { CopyTradingConfig } from '../types' import { useMediaQuery } from 'react-responsive' const { Title } = Typography const ConfigPage: React.FC = () => { const isMobile = useMediaQuery({ maxWidth: 768 }) const [form] = Form.useForm() const [loading, setLoading] = useState(false) const [config, setConfig] = useState(null) useEffect(() => { fetchConfig() }, []) const fetchConfig = async () => { try { const response = await apiService.config.get() if (response.data.code === 0 && response.data.data) { const data = response.data.data setConfig(data) form.setFieldsValue(data) } else { message.error(response.data.msg || '获取配置失败') } } catch (error: any) { message.error(error.message || '获取配置失败') } } const handleSubmit = async (values: any) => { setLoading(true) try { const response = await apiService.config.update(values) if (response.data.code === 0) { message.success('更新配置成功') fetchConfig() } else { message.error(response.data.msg || '更新配置失败') } } catch (error: any) { message.error(error.message || '更新配置失败') } finally { setLoading(false) } } return (
跟单配置
比例模式 固定金额模式 prevValues.copyMode !== currentValues.copyMode} > {({ getFieldValue }) => { const copyMode = getFieldValue('copyMode') return copyMode === 'RATIO' ? ( ) : ( ) }}
) } export default ConfigPage