Skip to content

Upload 上传

规则

基础示例

Props 配置示例

图片上传

文件上传

限制文件大小

整段禁用

Events 事件示例

监听上传状态

上传后更新其他字段

完整配置项:TDesign_Upload

valueArray

注意

文件上传成功后需要通过 onSuccess 回调,将接口返回内容中的 url 赋值给 file.url,否则表单获取不到组件的数据。

Props

参数说明类型默认值版本
abridgeName文件名过长时保留首尾长度Array<number>--
accept接受上传的文件类型string--
action上传接口地址string--
allowUploadDuplicateFile是否允许重复文件名booleanfalse-
autoUpload选择文件后是否自动上传booleantrue-
beforeAllFilesUpload全部文件上传前钩子(file: UploadFile[]) => boolean | Promise<boolean>--
beforeUpload单文件上传前钩子(file: UploadFile) => boolean | Promise<boolean>--
cancelUploadButton取消上传按钮属性ButtonProps | TNode--
data上传请求额外字段Record<string, any> | function--
default触发上传元素 / 拖拽区域string | TNode--
disabled是否禁用boolean--
dragContent自定义拖拽区域(theme=custom)TNode--
draggable是否启用拖拽上传boolean--
fileListDisplay完全自定义文件列表 UITNode<{ files; dragEvents? }>--
files已上传列表(v-model:files)Array<UploadFile>[]-
defaultFiles非受控文件列表Array<UploadFile>[]-
format转换 UploadFile 结构(file: File) => UploadFile--
formatRequest自定义上传请求参数function--
formatResponse格式化上传响应function--
headers请求头Record<string, string>--
imageViewerProps透传图片预览ImageViewerProps--
inputAttributes添加到 input 的属性CSSProperties--
isBatchUpload多文件作为独立包整体替换booleanfalse-
locale组件文本语言配置UploadConfig--
max上传数量上限(0 不限制)number0-
methodHTTP 请求类型stringPOST-
mockProgressDuration模拟进度间隔(ms)number--
multiple多文件上传booleanfalse-
name上传字段名stringfile-
placeholder占位符string--
requestMethod自定义上传方法function--
showImageFileName是否显示图片文件名booleantrue-
showThumbnail文件列表是否显示缩略图booleanfalse-
showUploadProgress是否显示上传进度booleantrue-
sizeLimit文件大小限制number | SizeLimitObj--
status提示文本状态default | success | warning | error--
theme组件风格custom | file | file-input | file-flow | image | image-flowfile-
tips组件下方提示string | TNode--
trigger触发上传元素TNode<TriggerContext>--
triggerButtonProps选择按钮属性ButtonProps--
uploadAllFilesInOneRequest同一请求上传全部文件booleanfalse-
uploadButton点击上传按钮属性ButtonProps | TNode--
uploadPastedFiles是否允许粘贴上传booleantrue-
useMockProgress是否显示模拟进度booleantrue-
value已上传列表(同 files)Array<UploadFile>[]-
defaultValue非受控列表Array<UploadFile>[]-
withCredentials请求是否携带 cookiebooleanfalse-

Events

事件说明类型版本
cancelUpload点击取消上传() => void-
change文件列表变化(value, context: UploadChangeContext) => void-
dragenter进入拖拽区域(context: { e: DragEvent }) => void-
dragleave离开拖拽区域(context: { e: DragEvent }) => void-
drop拖拽结束(context: { e: DragEvent }) => void-
fail上传失败(options: UploadFailContext) => void-
oneFileFail单文件上传失败(多文件)(options: UploadFailContext) => void-
oneFileSuccess单文件上传成功(context) => void-
preview图片预览(options: { file; index; e: MouseEvent }) => void-
progress上传进度变化(options: ProgressContext) => void-
remove移除文件(context: UploadRemoveContext) => void-
selectChange选择文件后、上传前(files: File[], context) => void-
success上传成功(context: SuccessContext) => void-
validate上传校验结束(context: { type: UploadValidateType; files }) => void-
waitingUploadFilesChange待上传列表变化(context: { files; trigger }) => void-

FormCreate 是一个开源项目,基于 MIT 许可证发布,欢迎个人和企业用户免费使用