huangguoce 1b2bb8f7e3 文件上传组件封装 5 months ago
..
components 1b2bb8f7e3 文件上传组件封装 5 months ago
tools 1b2bb8f7e3 文件上传组件封装 5 months ago
changelog.md 1b2bb8f7e3 文件上传组件封装 5 months ago
package.json 1b2bb8f7e3 文件上传组件封装 5 months ago
readme.md 1b2bb8f7e3 文件上传组件封装 5 months ago

readme.md

xe-upload

说明

不占用页面位置的上传组件;

H5、APP、微信小程序中可上传图片,视频和文件;其他端暂时只能上传图片和视频

上传图片通过chooseMediachooseImage实现

上传视频通过chooseMediachooseVideo实现

H5端上传文件通过chooseFile实现

APP上传文件通过renderjs实现

微信小程序上传文件通过chooseMessageFile实现

使用

Attributes

参数 说明 类型 默认值
options 请求配置(参数与uni.uploadFile的参数一致) object { name: 'file' }

Events

| 事件名 | 说明 | 参数 | | ----------- | ----------- | ----------- | | callback | 接收数据 | { type, data } |

callback type

参数 说明
warning 提示信息(下文称warning回调)
success 上传成功(下文称success回调)
choose 选择文件(下文称choose回调)

callback data

'callback.type === success' : [
    {
        "size": 176579, // 选择的文件的大小
        "name": "Kafka.pdf", // 选择的文件的名称(小程序端可能会没有)
        "type": "application/pdf",
        "tempFilePath": "blob:http://192.168.137.1:8080/2585769b-3195-4f3d-b9f8-d9e99f55deec", // 临时路路径
        "fileType": "file", // 文件类型[image, video, file]
        "response": {
            "result": {
                "fileName": "Kafka.pdf",
                "filePath": `http://localhost:3000/upload/e51d814b649122fc64892d0bc6383d07.pdf`,
            },
            "success": true,
        }, // 上传返回的信息
    }
]

'callback.type === choose' : [
    {
        "size": 176579, // 选择的文件的大小
        "name": "Kafka.pdf", // 选择的文件的名称(小程序端可能会没有)
        "type": "application/pdf",
        "tempFilePath": "blob:http://192.168.137.1:8080/4204e460-f185-4fc9-9f4d-1bc50ab06981", // 文件临时路径
        "fileType": "file", // 文件类型[image, video, file]
    }
]

注意事项

1、options入参中如果url为空,则choose回调的data列表中只有选择文件能得到的信息和临时路径,临时路径可用于自定义上传方法(APP除外);传入url选择文件后会自动上传到服务器,此时choose回调不会触发,而是执行success回调,success回调的data列表会包括选择文件能得到的信息

2、APP端文件建议直接上传到服务器,拿到文件上传后的地址再进行其他操作(目前测试APP端file转换后的Blob Url无法用于uni.uploadFile,所以建议APP文件直接上传)

3、APP端文件暂时支持单个上传

4、当uni.chooseMedia可用时,会优先使用uni.chooseMedia

5、具体使用可下载示例项目运行查看完整示例