我正在尝试覆盖onDrop()
,<ImageInput>
但上传文件时失败。它不显示图像预览。
以下是组件。我正在调用一个 api,它将返回我的 url,并且我正在设置状态,以用于进一步的目的。
import React, { Component } from 'react';
import { ImageInput, ImageField } from 'react-admin';
import service from '../../providers/service';
class ImageUpload extends Component {
onDropChange = (files) => {
const file = new FormData();
file.append('image', files[0]);
service('post', 'upload', file)
.then((response) => {
response.data.partner_logo_url = response.data.url;
this.props.onPartnerLogo(response.data.url);
return response;
});
};
render() {
const { source, validate, label } = this.props;
return (
<ImageInput
source={source}
validate={validate}
label={label}
accept="image/*"
options={{
onDrop: this.onDropChange,
}}
>
<ImageField source="src"/>
</ImageInput>
);
}
}
export default ImageUpload;