0

我正在使用 react-filepond 处理多个文件。我需要在一个请求中将所有文件一起发送到 API,而不是每个文件多个请求:

// Import the Image EXIF Orientation and Image Preview plugins
import FilePondPluginImageExifOrientation from 'filepond-plugin-image-exif-orientation'
import FilePondPluginImagePreview from 'filepond-plugin-image-preview'
import 'filepond-plugin-image-preview/dist/filepond-plugin-image-preview.css'

// Register the plugins
registerPlugin(FilePondPluginImageExifOrientation, FilePondPluginImagePreview)

function App() {
  console.log('TEST');
  const [files, setFiles] = useState([])
  console.log(files);
  return (
    <div className="App">
      <FilePond
        server='/api'
        files={files}
        allowMultiple={true}
        onupdatefiles={setFiles}
        labelIdle='Drag & Drop your files or <span class="filepond--label-action">Browse</span>'
      />
    </div>
  )
}

const rootElement = document.getElementById('root')
ReactDOM.render(<App />, rootElement)

沙盒链接在这里

我该如何实施?

4

1 回答 1

0

不要使用该server物业。您可以将files数组映射到文件对象,files.map(item => item.file)然后将文件项传递给FormData对象并将formData对象发送到服务器。

const formData = new FormData();
files.map(item => item.file).forEach(file => formData.append('my-file', file))

// send formData to server with `fetch` or `XMLHttpRequest`
于 2019-06-25T18:23:15.080 回答