更新记录

1.0.1(2025-02-13) 下载此版本

  • H5 禁用视频预览

1.0.0(2025-02-06) 下载此版本

  • 通用图片、视频文件上传组件
  • 支持图片放大预览
  • 支持视频播放
  • 上传视频带进度条

平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

ziqirj-media-upload 图片/视频文件上传组件

组件名:ziqirj-media-upload 代码块: ziqirj-media-upload 关联组件:scss/sass, uni-icons, liu-progressbar, ksp-cropper

插件说明

  • 1、通用图片、视频文件上传组件
  • 2、支持图片放大预览
  • 3、支持视频播放
  • 4、上传视频带进度条

使用说明

组件参数

参数 类型 默认值 必填 描述
fileType Stirng all false 选择文件类型,可选值:image、video
param Stirng file false 表单属性名
list Array [] false 回显文件列表,数据格式:{name: '文件名', url: '访问路径'}
limit Number 1 false 可上传文件数量
maxMN Number 100 false 最大可上传文件,单位:M
autoUpload Boolean true false 自动上传,为false时,触发@upload事件
url Boolean false 自动上传路径,autoUpload为true时必填,为空值时,触发@upload事件
headers Object {} false 自动上传携带请求头
upName Stirng file false 后台接收文件对象属性名
formData Object {originalFileName: '原文件名'} false 自动上传表单携带参数
forbidden Boolean false false 是否禁用
sourceType Array ['album'] false 媒体文件来源,album 从相册选图,camera 使用相机
clipping Boolean true false 是否启用图片剪裁,fileType===image时可用
config Object {name: 'name', url: 'url'} false 自动上传返回值属性名配置

回调函数

方法名 参数 描述
clickItem res 文件点击事件,携带参数为:{index: 文件索引, item: 文件对象}
upload res 文件手动上传事件,autoUpload为false或url为空时调用,携带参数为:uni.chooseFile success返回参数
callback event, item, param, affixList 文件上传/移除成功回调函数

@callback函数参数

参数 类型 描述
event Stirng 操作事件,固定值:上传-upload、移除-remove
item Object 当前上传/移除对象
param Stirng 组件参数中传入表单属性名
affixList Array 当前文件数组,数据格式:{name: '文件名', url: '访问路径'}

使用示例

<template>
    <view style="margin: 0 15px;">
        <text>图片上传</text>
        <ziqirj-media-upload  param="imageList" 
            :list="form.imageList" 
            :limit="5"
            :maxMN="10" 
            url='http://localhost:9002/common/upload' 
            :headers="headers" 
            :config="{name: 'originalFilename', url: 'url'}"
            :clipping="true"
            @callback="callback">
        </ziqirj-media-upload>

        <text>视频上传</text>
        <ziqirj-media-upload fileType="video"
            param="videoList" 
            :list="form.videoList" 
            :limit="5"
            :maxMN="10" 
            url='http://localhost:9002/common/upload' 
            :headers="headers" 
            :config="{name: 'originalFilename', url: 'url'}"
            @callback="callback">
        </ziqirj-media-upload>
    </view>
</template>

<script>
    export default {
        data() {
            return {
                headers: {},
                form: {
                    imageList: [],
                    videoList: []
                }
            }
        },
        methods: {
            callback(res) {
                console.log("callback", res)

                // 设置文件列表值到表单属性
                this.form[res.param] = res.affixList
            },
            uploadFn(res) {
                console.log("uploadFn", res)
            }
        }
    }
</script>

<style>

</style>

依赖组件

scss/sass

uni-icons

liu-progressbar

ksp-cropper

如使用过程中有任何问题,或者您对组件有一些好的建议,欢迎留言

紫琪程序猿

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问