ImageUpload 图片上传

用于将图片上传到服务器,并简略展示上传文件的信息以及提供预览功能。

何时使用

需要将本地图片或拍照后上传到服务器时使用

代码示例

基本使用

属性

属性类型必填默认值说明
valueArray<File | string> | string[]已上传的图片列表
actionstring-上传图片的服务器地址,只支持https地址
enableShowPhotoDownloadbooleanfalse预览图片时是否展示下载按钮,只有在不存在onPreview字段时生效
enableSavePhotobooleanfalse照片支持长按下载
fileNamestring'image'上传图片的文件名,即对应的 key,开发者在服务器端通过这个 key 可以获取到图片二进制内容
formDataany{}上传时其他额外的 form 数据对象。
heightnumber | string80自定义容器高度
maxCountnumber1上传图片的最大数量
mode'scaleToFill' | 'aspectFit' | 'aspectFill' | 'widthFix' | 'heightFix' | 'top' | 'bottom' | 'center' | 'left' | 'right' | 'top left' | 'top right' | 'bottom left' | 'bottom right''scaleToFill'图片缩放模式和裁剪模式
previewbooleantrue是否支持预览
sourceType['album'] | ['camera'] | ['album', 'camera']['album', 'camera']视频选择的来源
widthnumber | string80自定义容器宽度
classNamestring-类名

事件

事件名说明类型
onBeforeUpload图片上传前的回调函数,返回 false 可终止图片上传,支持返回 Promise(v: File, u: File[]) => boolean | Promise<boolean> | void
onChange已上传的文件列表变化时触发(v: File[]) => void
onDelete删除当前列表中的图片时触发,包括上传成功和上传失败的图片,如果返回 false 表示阻止删除,支持返回 Promise(v: File) => boolean | Promise<boolean> | void
onPreview点击图片进行预览时触发,会覆盖默认的预览功能(v:File[]) => void
onUpload图片上传方法,当不存在https服务器时,支持自定义上传方式,只在不存在action字段时生效(v: File) => Promise<File>
onAfterUpload使用action时,图片上传后的回调函数,当上传接口不为默认的{success: true, data: {url: 'xx'}}时使用,返回void则表示上传失败,返回的string代表图片File中的url(res) => string

File

字段名说明类型
url图片的资源地址string
status上传状态'pending' | 'done' | 'error'

样式类

类名说明
amd-image-upload整体样式
amd-image-upload-show已上传图片整体展示区域样式
amd-image-upload-close已上传图片右上角关闭按钮样式
amd-image-upload-loading上传中加载中样式
amd-image-upload-loading-icon上传中加载中图标
amd-image-upload-image已上传图片区域样式
amd-image-upload-add-image-wrapper点击上传图片区域整体样式