将多个上传文件append到FormData中时出现问题

首先用elementUI的上传组件将文件分别保存到form.picFile和form.corFile中,然后在提交的时候先new一个FormData对象,再将文件append进去,但是发送的数据中只有一个文件。请问是什么原因?

this.param = new FormData();
this.param.append('files', this.form.picFile, this.form.picFile.fileName);
this.param.append('files', this.form.corFile, this.form.corFile.fileName);

图片描述

阅读 7.3k
2 个回答

多文件上传要这么写

data.append('file[]', $('.file')[i].file[0]);

this.param.append('files1', this.form.picFile, this.form.picFile.fileName);
this.param.append('files2', this.form.corFile, this.form.corFile.fileName);

修改一下回答

clipboard.png

同键名是没有任何问题的 mdn上面很明确加'[]'只是为了命名习惯. 所以说 你现在的问题可能出现在 第二次插入文件时 form中没有第二个的那个参数 应该是还没有获取到.
两种方法可以测试到

1.打断点
2.在初始化form的时候给第二个参数一个默认的值 如果获取到了 值会被覆盖 没有获取到 你提交时则显示默认的值
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题