import { ModalForm, ProForm, ProFormDigit, ProFormText, } from '@ant-design/pro-components'; import { Form } from 'antd'; import {DictOptionType, DictValueEnumObj} from "@/components/DictTag"; import {useEffect} from 'react' export type ListFormProps = { onCancel: (flag?: boolean, formVars?: unknown) => void; onSubmit: (values: API.AreaSubWay.LinePoint) => Promise; open: boolean; values?: Partial; jobGroupOptions?: DictOptionType[]; statusOptions?: DictValueEnumObj; }; const waitTime = (time: number = 100) => { return new Promise((resolve) => { setTimeout(() => { resolve(true); }, time); }); }; const SubWayEdit: React.FC = (props) => { const [form] = Form.useForm(); useEffect(() => { form.resetFields(); if(props.values) { form.setFieldsValue({ stationName: props.values.stationName, stationId: props.values.stationId, longitude: props.values.longitude, latitude: props.values.latitude, }); } }, [form, props]); const handleCancel = () => { props.onCancel(); form.resetFields(); }; const handleFinish = async (values: Record) => { props.onSubmit(values as API.AreaSubWay.LinePoint); }; return ( title={`${props.values ? '编辑' : '新增'}站点`} form={form} // layout="inline" autoFocusFirstInput open={props.open} modalProps={{ destroyOnClose: true, onCancel: () => handleCancel(), }} submitTimeout={2000} onFinish={handleFinish} >