UNPKG

shineout

Version:

Shein 前端组件库

40 lines (35 loc) 979 B
import React from 'react'; import ReactDOM from 'react-dom'; import Gallery from './Gallery'; import { imageClass } from './styles'; var container; function close() { // eslint-disable-next-line document.removeEventListener('keydown', keyClose); ReactDOM.unmountComponentAtNode(container); document.body.removeChild(container); container = null; } function keyClose(e) { if (e.keyCode === 27) close(); } function getContainer() { if (container) return container; container = document.createElement('div'); document.body.appendChild(container); container.className = imageClass('gallery'); return container; } export default function (images, current) { if (current === void 0) { current = 0; } if (!Array.isArray(images)) images = [images]; var div = getContainer(); document.addEventListener('keydown', keyClose); ReactDOM.render(React.createElement(Gallery, { onClose: close, current: current, images: images }), div); }