feat(component): 通过visible控制动态表单的初始化

master
钟良源 2 months ago
parent 6d7d45c745
commit 9a4bb3c511

@ -156,12 +156,14 @@ const AddApiModal = ({
<EditableTable <EditableTable
onDataUpdate={setParametersData} onDataUpdate={setParametersData}
initialData={componentDesignProgress?.parameters || []} initialData={componentDesignProgress?.parameters || []}
visible={visible}
/> />
</FormItem> </FormItem>
<FormItem label="输出参数" field="responses"> <FormItem label="输出参数" field="responses">
<EditableTable <EditableTable
onDataUpdate={setResponsesData} onDataUpdate={setResponsesData}
initialData={componentDesignProgress?.responses || []} initialData={componentDesignProgress?.responses || []}
visible={visible}
/> />
</FormItem> </FormItem>
</Form> </Form>

@ -66,7 +66,7 @@ function EditableCell({ value, onChange, columnType, record, dataIndex }) {
return <span>{value}</span>; return <span>{value}</span>;
} }
function EditableTable({ onDataUpdate, initialData = [] }) { function EditableTable({ onDataUpdate, initialData = [], visible }) {
const [data, setData] = useState([]); const [data, setData] = useState([]);
// 当初始数据变化时,更新表格数据 // 当初始数据变化时,更新表格数据
@ -81,6 +81,10 @@ function EditableTable({ onDataUpdate, initialData = [] }) {
} }
}, [initialData]); }, [initialData]);
useEffect(() => {
if (!visible) setData([]);
}, [visible]);
const handleValueChange = (key, dataIndex, value) => { const handleValueChange = (key, dataIndex, value) => {
const newData = data.map(item => { const newData = data.map(item => {
if (item.key === key) { if (item.key === key) {

Loading…
Cancel
Save