jc-biz-components
Version:
jc component library based on Antd
43 lines (37 loc) • 936 B
JavaScript
import React from 'react'
import ReactDOM from 'react-dom'
import { Modal } from 'antd'
const showModalWrapper = (component, params = {}) => {
const maskDiv = document.createElement('div')
document.body.appendChild(maskDiv)
const _close = () => {
const unmountResult = ReactDOM.unmountComponentAtNode(maskDiv)
if (unmountResult) {
maskDiv.parentNode.removeChild(maskDiv)
}
}
class ModalWrapper extends React.Component {
render() {
return (
<Modal
visible={true}
onCancel={_close}
maskClosable={false}
footer={null}
{...params}
>
<div style={{ padding: '24px 12px' }}>
{React.cloneElement(component, {
onCancel: _close,
})}
</div>
</Modal>
)
}
}
ReactDOM.render(
React.createElement(ModalWrapper),
maskDiv
)
}
export { showModalWrapper }