单图上传改为多图上传,后台就接收不到数据了?

<input type="file" multiple accept="image/png,image/gif,image/jpeg" @change="getFile($event)">    
//获取inputgetFile:function(e){    this.file = e.target.files;
},//创建creation:function(){    console.log(this.file);    let formData = new FormData();
    formData.append('file', this.file);
    formData.append('name', 'tomorrow');
        headers : { 
            'Content-type': 'multipart/form-data'
        }
    })
    .then(res => {        //创建成功
    })
},

之前是单图上传的,后台可以接收得到数据。现在需求变了改为多图上传
我把

this.file = e.target.files[0];

改为

this.file = e.target.files;

按道理应该是这样的吧,可后台就接收不到数据了?


达令说
浏览 516回答 2
2回答

慕妹3242003

files是数组,要循环appendfor(var&nbsp;i&nbsp;=&nbsp;0;i&nbsp;<&nbsp;this.file.length;i++){ &nbsp;&nbsp;&nbsp;&nbsp;formData.append('file[]',&nbsp;this.file[i]); }

浮云间

按道理应该不是这样,你应该for循环把file[i]依次append进formData&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;this.file.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;formData.append('file',&nbsp;this.file[i]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
打开App,查看更多内容
随时随地看视频慕课网APP