react + antd 多文件上传 批量上传 单次请求 自定义上传
官方回答
2019
目前还不支持多文件单次上传。
2020/8我们不能更改它,因为这将是一个中断更改。
2021/5onChange 可以实现。
(change实现多文件多次请求 且 上传中,上传失败,上传成功都会调用change)
beforeUpload
里面只会更新一次state,然后监听state调接口并重置单例状态
reactconst fileState = useRef(); // 存储files const [uploadFiles, setUploadFiles] = useState([]); const updateFiles = (function () { let fileList; return function (list, setState) { if (!fileList) { fileList = list; setState && setState(list); } return { fileList, reset() { fileList = false; } }; }; })(); const beforeUpload = (_, fileList) => { fileState.current = updateFiles(fileList, setUploadFiles); return false; } const customRequest = () => { console.log("自定义上传", uploadFiles); }; useEffect(() => { if (uploadFiles.length > 0) { customRequest(); fileState.current.reset(); } }, [uploadFiles]);
本文作者:还是夸张一点
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!