如何解决React Admin dataProvider 为“更新”返回了一个空响应
我正在创建一个带有 Drf Api 的 React Admin 项目,问题是,当我更新我的一个模型的图像字段时,它会更新,并且一切正常,但会引发下一个错误:“dataProvider 返回了一个'update' 的响应为空。”。
我检查了开发工具的网络部分,它确实收到了来自 api 的响应
这是 React Admin 数据提供程序代码:
const dataProvider = drfProvider('http://127.0.0.1:8000')
const myDataProvider = {
...dataProvider,update : (resource,params) => {
if(!params.data.image) {
return dataProvider.update(resource,params)
}
if (!params.data.image.rawFile) {
delete params.data.image
return dataProvider.update(resource,params)
}
return convertFiletoBase64(params.data.image).then(image => {
dataProvider.update(resource,{
...params,data : {
...params.data,image : image
}
})
})
}
}
const convertFiletoBase64 = file =>
new Promise((resolve,reject) => {
const reader = new FileReader();
reader.onload = () => resolve(reader.result);
reader.onerror = reject;
reader.readAsDataURL(file.rawFile);
});
export default myDataProvider; ```
解决方法
虽然线程很旧,但我最近遇到了这个。希望这对将来的人有所帮助。
目前该函数没有返回任何内容。箭头函数的微小变化将确保返回数据。我删除了 .then(image => {
return convertFileToBase64(params.data.image).then(image =>
dataProvider.update(resource,{
...params,data : {
...params.data,image : image
}
})
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。