uni-app中plus.uploader.createUpload是否支持一次上传多张图片?

uni-app中plus.uploader.createUpload是否支持一次上传多张图片?

循环添加这个没用?task.addFile(),在服务器端只接收到1个文件。

var task = plus.uploader.createUpload(server + "/webapp/sys/fileupload.do",
    { method: "POST" },
    function (t, status) { // 上传完成
        if (status == 200) {
            wt.close();
            mui.confirm("上传成功!!是否清除已上传图片", "提示", ["清除", "保留"], function (e) {
                if (e.index == 0) {
                    cleanHistory(); // 清除历史记录
                }
            });
            files = [];
        } else {
            wt.close();
            mui.alert("上传失败");
            files = [];
        }
    }
);

// task.addData("userid", plus.storage.getItem("toker"));
task.addData("idceard", idceard);
task.addData("longitude", posi.longitude);
task.addData("latitude", posi.latitude);

console.log(posi.longitude);
console.log(posi.latitude);

for (var i = 0; i < files.length; i++) {
    var f = files[i];
    task.addFile(f.path, { key: f.name });
}
task.start();

更多关于uni-app中plus.uploader.createUpload是否支持一次上传多张图片?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

支持上传多张图片的,参考Hello H5模板 上传示例。

更多关于uni-app中plus.uploader.createUpload是否支持一次上传多张图片?的实战教程也可以访问 https://www.itying.com/category-93-b0.html


看了一天,也找了一天,并没有发现答案,可否给个详细点提示

helloh5模板中uploader模块。

回复 山有扶苏:helloh5 示例demo中uploader就支持。可以通过HBuilder创建移动App项目,选择helloh5模板,进而查看示例代码。

你确定服务端循环处理所有接收到的文件了吗

key不同 Java后端MultipartFile [] file无法接收文件,把key改成file?前端就只能传一个,到底如何才能多图上传?

在uni-app中,plus.uploader.createUpload确实支持多文件上传,但需要注意以下几点:

  1. 你的代码逻辑是正确的,通过循环调用task.addFile()可以添加多个文件

  2. 常见问题可能出在:

  • 服务器端接收方式(需要支持multipart/form-data格式)
  • 文件路径是否正确
  • 文件key是否重复
  1. 建议检查:
  • 确认files数组中的每个元素都包含有效的path属性
  • 服务器端是否配置了接收多个同名文件(如PHP需要使用$_FILES数组)
  1. 可以尝试在addFile时给每个文件设置不同的key值:
task.addFile(f.path, { key: 'file'+i });
回到顶部