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