为什么一个文件发送到服务器

我写了一个函数“导入文件”,它必须将几个文件发送到服务器。只有一个文件到达服务器。


输入:


<input

   type="files"

   id="files"

   name="files"

   multiple

   onChange={ (e) => this.importFile(e.target.files) }

/>

功能:


importFile(file: File) {

   const fd = new FormData();

   let filesArr = [];

   for (let key in file) {

       if(file[key] instanceof File) {

         filesArr.push(file[key]);

       }

   }

   for (let i = 0; i < filesArr.length; i++) {

      fd.append('file', filesArr[i]);

   }

   post('/file/attachment', fd)

       .then((res) => {

          this.props.importFile([res]);

        })

       .catch((e) => console.error(e));

}


绝地无双
浏览 168回答 2
2回答

UYOU

您是服务器,只能在formData.试试吧fd.append('file[]', filesArr[i])。在[]键名前面使用时,可以附加多个值,如MDN 文档中所写,请参见示例 3。

波斯汪

fd.append(`file${i}`,&nbsp;filesArr[i]);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript