Skip to content

Upload Media 媒体上传

基础用法

  • 用于快速上传图片/视频媒体文件,分为基础版(sn-upload-media)和 uniCloud 版(sn-upload-media-unicloud
  • 支持选择媒体、上传、预览等功能。
vue
<template>
	<sn-upload-media url="xxxx"></sn-upload-media>
</template>

更多演示请下载 demo 查看

属性

sn-upload-media

参数说明类型默认值可选值
url上传地址String--
autoUpload是否自动上传。如设置为 false,则可以通过 upload 方法上传所有媒体文件Booleantruetrue | false
mode媒体模式。支持图片和视频。Stringimageimage | video
chooseCount一次可以选择的文件数量。视频文件每次只支持选择1张。Number20-
maxCount最多可以上传的文件数量,小于等于 0 则不限制Number-1-
timeout上传超时时间(单位:ms)Number10000-
formData附加到上传请求的表单数据UTSJSONObject{}-
sourceType可选择媒体文件的来源,提供 album(相册)、camera(相机)两个选项Array<String>["album", "camera"]album | camera
width媒体文件子项宽度String70px-
height媒体文件子项高度String70px-
itemBgColor媒体文件占位项背景颜色String``-
itemBorderRadius媒体文件子项圆角大小String``-
iconSize媒体文件占位项中央图标大小String40px-
disabled是否禁用Booleanfalsetrue | false
chooseErrorTip选择媒体文件失败时的提示信息String选择媒体文件失败-
enablePreview是否启用点击图片预览功能。仅图片模式生效。Booleantruetrue |false
uploadingText上传中的文本String上传中-
uploadedText上传成功的文本String上传成功-
unuploadedText未上传的文本String未上传-
errorText上传失败的文本String上传失败-
clearable是否显示删除按钮Booleantruetrue |false
compressed是否压缩视频文件。仅视频模式生效。Booleantruetrue |false
maxDuration录像最大时长,单位为s。仅视频模式生效。Booleantruetrue |false
customStyle自定义上传区域样式UTSJSONObject{}-
customItemStyle自定义媒体文件子项样式UTSJSONObject{}-

sn-upload-media-unicloud

与上表相比,此组件无 urltimeoutformData 属性,新增属性 directory

参数说明类型默认值可选值
directory上传至云存储的目录,注意,不要写文件名,该目录将和随机生成的文件名拼合为文件在云存储的绝对地址StringuploadImages/-

事件

名称类型说明
uploaded(response: UploadFileSuccess) => void每个文件上传成功时触发
upload-error(error: Error) => void每个文件上传失败时触发
choose-error(error: Error) => void选择文件失败时触发
image-chose(res: ChooseImageSuccess)=>void选择图片成功时触发
video-chose(res: ChooseVideoSuccess)=>void选择视频成功时触发

插槽

名称说明
default替换默认的媒体文件占位图

方法

名称参数返回值描述
upload--开始上传所有未上传的文件

使用 MIT 协议