import InitForm from '../InitForm'; import { Modal } from 'antd'; import React, { useState, memo } from 'react'; import DetailPro from '../DetailPro'; import PropTypes from 'prop-types'; function ModalPro(props) { let pushSettingFlag = props.pushSettingFlag; let newProps = { ...props }; delete newProps.children; delete newProps.style; const detailprops = { ...newProps, detailpath: props.detailpath, fields: props.fields, detailData: props.detailData, }; return ( <Modal maskClosable={false} closable={true} width={1000} destroyOnClose={true} {...props} onCancel={() => props?.onClose?.()} footer={false} > {props.val == 'only' ? ( props.children ) : props.val == 'detail' ? ( <DetailPro {...detailprops} /> ) : props.val == 'detailaddon' ? ( <div> <DetailPro {...detailprops} /> {props?.children} </div> ) : ( <InitForm {...newProps} /> )} {pushSettingFlag ? ( <a id="pushSettingBtn" onClick={() => { props.checkVariableOpen(); }} > 查看变量 </a> ) : null} </Modal> ); } ModalPro.propTypes = { detailpath: PropTypes.string, //详情 params: PropTypes.object, //详情|表单编辑 参数 fields: PropTypes.array, //详情列表 detailData: PropTypes.object, //详情数据 }; export default ModalPro;