fix: form delay bug

This commit is contained in:
yehuozhili 2020-10-17 10:55:07 +08:00
parent 52f153a59d
commit f37db4691a
3 changed files with 13 additions and 16 deletions

View File

@ -1,5 +1,5 @@
import React, { FC, memo, useEffect } from 'react'; import React, { FC, memo, useEffect } from 'react';
import { Form, Select, Input, Modal } from 'antd'; import { Form, Select, Input, Modal, Button } from 'antd';
import { baseFormOptionsType } from '../FormEditor/types'; import { baseFormOptionsType } from '../FormEditor/types';
const { Option } = Select; const { Option } = Select;
@ -13,11 +13,10 @@ interface EditorModalProps {
item: any; item: any;
onSave: (data: any) => void; onSave: (data: any) => void;
visible: boolean; visible: boolean;
onCancel: () => void;
} }
const EditorModal: FC<EditorModalProps> = props => { const EditorModal: FC<EditorModalProps> = props => {
const { item, onSave, visible, onCancel } = props; const { item, onSave, visible } = props;
const onFinish = (values: any) => { const onFinish = (values: any) => {
onSave && onSave(values); onSave && onSave(values);
@ -48,11 +47,17 @@ const EditorModal: FC<EditorModalProps> = props => {
{!!item && ( {!!item && (
<Modal <Modal
title="编辑表单组件" title="编辑表单组件"
footer={
<div>
<Button type="primary" onClick={() => handleOk()}>
</Button>
</div>
}
forceRender
visible={visible} visible={visible}
onOk={handleOk} onOk={handleOk}
onCancel={onCancel} closable={false}
okText="确定"
cancelText="取消"
> >
<Form <Form
form={form} form={form}

View File

@ -88,10 +88,6 @@ const FormItems = (props: FormItemsProps) => {
onChange && onChange(newData); onChange && onChange(newData);
}; };
const handleCloseModal = () => {
setVisible(false);
};
const handleSaveItem = (data: baseFormUnion) => { const handleSaveItem = (data: baseFormUnion) => {
let newData = formData.map(v => (v.id === data.id ? data : v)); let newData = formData.map(v => (v.id === data.id ? data : v));
setFormData(newData); setFormData(newData);
@ -168,12 +164,7 @@ const FormItems = (props: FormItemsProps) => {
</div> </div>
</div> </div>
<EditorModal <EditorModal item={curItem} onSave={handleSaveItem} visible={visible} />
item={curItem}
onSave={handleSaveItem}
visible={visible}
onCancel={handleCloseModal}
/>
</div> </div>
); );
}; };

View File

@ -280,6 +280,7 @@ const HeaderComponent = memo((props: HeaderComponentProps) => {
destroyOnClose={true} destroyOnClose={true}
> >
<iframe <iframe
title="editor"
src={`/h5_plus/preview?tid=${props.location.query.tid}&gf=1`} src={`/h5_plus/preview?tid=${props.location.query.tid}&gf=1`}
style={{ width: '100%', border: 'none', height: '600px' }} style={{ width: '100%', border: 'none', height: '600px' }}
></iframe> ></iframe>