FilePond 在 React 上覆盖 server.process

FilePond override server.process on React

我正在尝试在 React 应用程序中使用 FilePond 控件。我需要使用自定义代码处理文件上传。根据文档,我应该使用 setOption 来覆盖 server.process 函数。 Documentation Link

这似乎不是使用 React 组件时的选项。

我可以找到多个尝试这样做的人,但找不到任何如何完成的例子。

<FilePond 
  files={this.state.newFiles}
  allowMultiple={true}  
  server={this.someFunction}
/>

如 github 期所述 FilePond.SetOptions not worked

With React the FilePond object is a component there is no global FilePond object available at the moment. You can pass the server properties to the component as a prop.

我相信你需要做同样的事情,而不是调用 setOptions 函数,你可以将这些选项作为属性传递给 FilePond 组件

如果您确实需要访问 setOptions,我已经从 react-filepond 中分叉了示例并添加了 useEfect,您可以在其中查看如何访问 setOptions 函数:accees setOptions by ref

对于 React,您需要使用 server 属性。 server 属性是 URL 或配置对象,而不是函数。

<FilePond 
  files={this.state.newFiles}
  allowMultiple={true}  
  server={{
    process: (fieldName, file, metadata, load, error, progress, abort, transfer, options) => {
        // your processing code here
    }
  }}
/>

有关更多信息,请查看此示例处理函数: https://pqina.nl/filepond/docs/patterns/api/server/#advanced