index.jsx 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import React, { Component } from "react";
  2. import {getAllDataList,getAllDataStringList} from '@utils/tools';
  3. import {dragBox} from '@utils/drag';
  4. import ReactDom from 'react-dom';
  5. import PreviewBody from '../PreviewBody';
  6. import store from '@store';
  7. import style from "./index.less";
  8. import close from '../../common/images/icon_close.png';
  9. class Preview extends Component {
  10. constructor(props) {
  11. super(props)
  12. }
  13. componentDidMount(){
  14. dragBox('previewWrapper','previewStatic','add')
  15. }
  16. render() {
  17. const { onClose, visible,preInfo } = this.props;
  18. let baseList = store.getState();
  19. const dataJson = getAllDataList(baseList);
  20. const dataStr = getAllDataStringList(baseList);
  21. const domNode = document.getElementById('root');
  22. return ReactDom.createPortal(<React.Fragment>
  23. <div className={style['container']}>
  24. <div className={style['shade']} onClick={onClose}></div>
  25. <div className={style['modal']} id="previewWrapper">
  26. <div id="previewStatic" className={`${style['close']} drag-title`}>预览</div>
  27. <img className={style.closeImg} src={close} onClick={onClose} />
  28. <PreviewBody
  29. preInfo={preInfo}
  30. dataJson={dataJson}
  31. dataStr={dataStr}
  32. show={false}
  33. come={'preview'}
  34. ></PreviewBody>
  35. </div>
  36. </div>
  37. </React.Fragment>,domNode)
  38. }
  39. }
  40. export default Preview;