Introducing PrimeReact v11-alpha 🎉Discover Now
styledFile

FileUpload

FileUpload is an advanced uploader with dragdrop support, multi file uploads, auto uploading, progress tracking and validations.

Drop files or click to browse
Up to 5 MB each
preview

Usage#

import { FileUpload } from '@primereact/ui/fileupload';
<FileUpload.Root>
    <FileUpload.Content>
        <FileUpload.ItemGroup>
            <FileUpload.Item>
                <FileUpload.ItemPreview />
                <FileUpload.ItemInfo>
                    <FileUpload.ItemName />
                    <FileUpload.ItemSize />
                </FileUpload.ItemInfo>
                <FileUpload.Remove></FileUpload.Remove>
            </FileUpload.Item>
        </FileUpload.ItemGroup>
    </FileUpload.Content>
</FileUpload.Root>

Examples#

Basic#

Select and upload files with drag-and-drop support.

No file chosen
basic-demo

Auto#

When auto property is enabled, a file gets uploaded instantly after selection.

auto-demo

Advanced#

Advanced uploader provides dragdrop support, multi file uploads, auto uploading, progress tracking and validations.

Drag and drop files to here to upload.
advanced-demo

InputGroup#

File upload functionality can be integrated within an InputGroup for inline file selection.

Upload
input-group-demo

Custom Upload#

Uploading implementation can be overridden by enabling customUpload property. This sample, displays the image on the client side with a grayscale filter.

custom-upload-demo

Dropzone#

A drag-and-drop zone for file uploads with file listing. Uses FileUpload.Content as a drop target with FileUpload.ItemGroup and FileUpload.Item for composable file display.

Drop files here

or click to browse

dropzone-demo

Image Preview#

Grid-based image preview with thumbnails using FileUpload.ItemPreview. Hover over images to reveal the remove button.

No images selected. Click "Add Images" to get started.

image-preview-demo

API#

Sub-Components#

See Primitive API for FileUploadRoot, FileUploadContent, FileUploadList, FileUploadItemGroup, FileUploadItem, FileUploadItemPreview, FileUploadItemInfo, FileUploadItemName, FileUploadItemSize, FileUploadRemove component documentation.

Hooks#

See Headless API for useFileUpload hook documentation.

Accessibility#

See FileUpload Primitive for WAI-ARIA compliance details and keyboard support.