Skip to content

图片上传


image

介绍

基本表单组件,用于用户上传图片。

API

Props


Props 属性

参数名描述类型默认值
status状态'default' |'disabled'|'readonly'|'hide''default'
title标题string'图片上传'
showLabel显示标题booleantrue
width字段占比'25%'|'50%'|'75%'|'100%''100%'
labelWidth标签宽度Object-
value默认值string-
name数据字段string-
apiAPI绑定string-
listType列表样式'text'|'picture'|'picture-card''text'
draggable拖拽booleanfalse
dragDesc拖拽提示信息string-
btnTitle按钮内容string-
btnType按钮类型'primary'|'default'|'outline''default'
directory文件夹上传booleanfalse
multiple多选booleanfalse
fileName上传文件名'files'|'file''files'
extraData额外数据Function-
headers头部信息Function-
setUrl文件预览地址Function-
maxFileNum最大上传文件个数number-
maxFileSize单文件最大上传大小(MB)number-
withCredentials是否允许请求cookiebooleanfalse
autoUpload自动上传booleantrue
accept上传文件类型string-
compress上传前压缩booleantrue
compressQuality压缩质量number0.6
compressSize上传图片超过此大小则开启压缩(MB)number2
enablePreview开启预览booleanfalse
previewEvent预览事件Function-
enableDownload开启下载booleantrue
downloadEvent下载事件Function-
baseStyle自定义样式 , 表格整体自定义样式string-
customClass类名绑定 , 绑定类的名称string-
boxStyle盒模型 , margin,border,padding设置BoxStyle-
uniqueKey唯一标识 , 组件的唯一标识string-
valueFormat默认值数据格式'default'|'object''default'
extra补充说明string-
tip气泡提醒string-
validate校验Validate-
loop循环, 循环渲染设置Loop-

注意

上传组件的 默认值 数据类型与高级中 默认值数据格式 设置有关,默认值数据格式为「默认」默认值 数据类型为 url 字符串数组,例:["/bucket/test.png", ...]。默认值数据格式为「对象数组」则 默认值 数据类型为对象数组,格式为:[{url: "xxxx", name: "xxx 文件"}, ...]

Events

事件名描述参数
onSuccess上传成功时触发ctx
params:{fileItem: FileItem}
loop:LoopParams
onError上传失败时触发ctx
params:{fileItem: FileItem}
loop:LoopParams
onChange上传的文件状态发生改变时触发ctx
params:{fileItem: FileItem, fileList: FileItem[]}
loop:LoopParams
onExceeLimit上传的文件超出限制后触发ctx
params:{fileItem: FileItem, fileList: FileItem[]}
loop:LoopParams
onPreview点击图片预览时触发ctx
params:{fileItem: FileItem}
loop:LoopParams
onProgress上传中的文件进度改变时触发ctx
params:{fileItem: FileItem, ev: ProgressEvent}
loop:LoopParams
onBeforeUpload上传前ctx
file: FileItem
loop:LoopParams
onBeforeRemove移除文件前触发ctx
params: FileItem
loop:LoopParams

Type

javascript
type FileItem = {
  "file":File,
  "name":string,
  "percent":number,
  "response":{
    "alert":string,
    "code":string
    "data":any,
    "msg":string
    "ts":number,
  }
  "status":string,
  "uid":string,
  "url":string,
}