Upload

Upload file by selecting or dragging.

Upload

When to use

Uploading is the process of publishing information (web pages, text, pictures, video, etc.) to a remote server via a web page or upload tool.
When you need to upload one or more files.
When you need to show the process of uploading.
When you need to upload files by dragging and dropping.


Upload by clicking

Classic mode. File selection dialog pops up when upload button is clicked.

Avatar

Click to upload user's avatar, and validate size and format of picture with beforeUpload.
Upload

Default Files

Use defaultFileList for uploaded files when page init.

Pictures Wall

After users upload picture, the thumbnail will be shown in list. The upload button will disappear when count meets limitation.

Complete control over file list

You can gain full control over filelist by configuring fileList. You can accomplish all kinds of customed functions. The following shows two circumstances:

1. limit the number of uploaded files.

2. read from response and show file link.

Drag and Drop

You can drag files to a specific area, to upload. Alternatively, you can also upload by selecting.

We can upload serveral files at once in modern browsers by giving the input the multiple attribute.

Click or drag file to this area to upload

Support for a single or bulk upload. Strictly prohibit from uploading company data or other band files

Upload directory

You can select and upload a whole directory.

Upload png file only

beforeUpload only prevent upload behavior when return false or reject promise, the prevented file would still show in file list. Here is the example you can keep prevented files out of list by using onChange.

Upload manually

Upload files manually after beforeUpload returns false.

Aliyun OSS

Use Aliyun OSS upload example.

Pictures with list style

If uploaded file is a picture, the thumbnail can be shown. IE8/9 do not support local thumbnail show. Please use thumbUrl instead.
yyy.png


yyy.png

Crop image before uploading

Use antd-img-crop to crop image before uploading.
+ Upload

Transform file before request

Use transformFile for transform file before request such as add a watermark.

Custom action icon

Use showUploadList for custom action icons of files.
xxx.png
yyy.png

API

PropertyDescriptionTypeDefault
accept
File types that can be accepted. See input accept Attribute
string
-
action
Uploading URL
string | (file) => Promise
-
method
The http method of upload request
string
post
directory
Support upload whole directory (caniuse)
boolean
false
beforeUpload
Hook function which will be executed before uploading. Uploading will be stopped with false or a rejected Promise returned. Warning:this function is not supported in IE9
(file, fileList) => boolean | Promise
-
customRequest
Override for the default xhr behavior allowing for additional customization and ability to implement your own XMLHttpRequest
function
-
data
Uploading extra params or function which can return uploading extra params
object | (file) => object | Promise
-
defaultFileList
Default list of files that have been uploaded
object[]
-
disabled
Disable upload button
boolean
false
fileList
List of files that have been uploaded (controlled). Here is a common issue #2423 when using it
object[]
-
headers
Set request headers, valid above IE10
object
-
listType
Built-in stylesheets, support for three types: text, picture or picture-card
string
text
multiple
Whether to support selected multiple file. IE10+ supported. You can select multiple files with CTRL holding down while multiple is set to be true
boolean
false
name
The name of uploading file
string
file
previewFile
Customize preview file logic
(file: File | Blob) => Promise
-
isImageUrl
Customize if render in thumbnail
(file: UploadFile) => boolean
showUploadList
Whether to show default upload list, could be an object to specify showPreviewIcon, showRemoveIcon, showDownloadIcon, removeIcon and downloadIcon individually
boolean | { showPreviewIcon?: boolean, showDownloadIcon?: boolean, showRemoveIcon?: boolean, removeIcon?: React.ReactNode, downloadIcon?: React.ReactNode }
true
withCredentials
The ajax upload with cookie sent
boolean
false
openFileDialogOnClick
Click open file dialog
boolean
true
onChange
A callback function, can be executed when uploading state is changing, see onChange
function
-
onPreview
A callback function, will be executed when file link or preview icon is clicked
function(file)
-
onRemove
A callback function, will be executed when removing file button is clicked, remove event will be prevented when return value is false or a Promise which resolve(false) or reject
function(file): boolean | Promise
-
onDownload
Click the method to download the file, pass the method to perform the method logic, do not pass the default jump to the new TAB
function(file): void
(Jump to new TAB)
transformFile
Customize transform file before request
Function(file): string | Blob | File | Promise
-
iconRender
Custom show icon
(file: UploadFile, listType?: UploadListType) => React.ReactNode
-
progress
Custom progress bar
ProgressProps (support type="line" only)
{ strokeWidth: 2, showInfo: false }