@boewa-software/react-async-uploader
Version:
React Uploder
49 lines (41 loc) • 908 B
JSX
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;