UNPKG

@boewa-software/react-async-uploader

Version:

React Uploder

49 lines (41 loc) 908 B
import React from 'react'; import PropTypes from 'prop-types'; /** * Komponente zur zum Anzeigen des Dateiauswahl-Dialogs für den Uploader. */ class DropZone extends React.Component { constructor(props) { super(props); this.dropZoneRef = React.createRef(); } componentDidMount() { this.props.assignDrop( this.dropZoneRef.current ); } render() { const { componentType, assignDrop, ...props } = this.props; return React.createElement( componentType, { ref: this.dropZoneRef, ...props } ); } } DropZone.propTypes = { componentType: PropTypes.string.isRequired, assignDrop: PropTypes.func.isRequired }; DropZone.defaultProps = { componentType: 'div' }; export default DropZone;