Check file size before uploading it in React Uploader component
30 Jan 20233 minutes to read
By using the uploading event, you can get the file size before uploading it to the server.
File object contains the file size in bytes only. You can convert the size to standard formats (KB
or MB
) using bytesToSize method.
import { UploaderComponent } from '@syncfusion/ej2-react-inputs';
import * as React from 'react';
import * as ReactDOM from "react-dom";
export default class App extends React.Component {
uploadObj;
path = {
removeUrl: 'https://services.syncfusion.com/react/production/api/FileUploader/Remove',
saveUrl: 'https://services.syncfusion.com/react/production/api/FileUploader/Save'
};
onBeforeUpload(args) {
// get the file size in bytes
const sizeInBytes = args.fileData.size;
// get the file size in standard format
alert("File size is: " + this.uploadObj.bytesToSize(sizeInBytes));
}
render() {
return (<UploaderComponent autoUpload={false} ref={upload => { this.uploadObj = upload; }} asyncSettings={this.path} uploading={this.onBeforeUpload = this.onBeforeUpload.bind(this)}/>);
}
}
ReactDOM.render(<App />, document.getElementById('fileupload'));
import { UploaderComponent, UploadingEventArgs } from '@syncfusion/ej2-react-inputs';
import * as React from 'react';
import * as ReactDOM from "react-dom";
export default class App extends React.Component<{}, {}> {
public uploadObj: UploaderComponent;
public path: object = {
removeUrl: 'https://services.syncfusion.com/react/production/api/FileUploader/Remove',
saveUrl: 'https://services.syncfusion.com/react/production/api/FileUploader/Save'
}
public onBeforeUpload(args: UploadingEventArgs): void {
// get the file size in bytes
const sizeInBytes: number = args.fileData.size;
// get the file size in standard format
alert("File size is: " + this.uploadObj.bytesToSize(sizeInBytes));
}
public render(): JSX.Element {
return (
<UploaderComponent autoUpload={false} ref = {upload => {this.uploadObj = upload !}} asyncSettings={this.path} uploading={this.onBeforeUpload = this.onBeforeUpload.bind(this)} />
);
}
}
ReactDOM.render(<App />, document.getElementById('fileupload'));
You can also explore React File Upload feature tour page for its groundbreaking features. You can also explore our React File Upload example to understand how to browse the files which you want to upload to the server.