javascript - 无法从 useEditController 获取数据
问题描述
我使用 React Admin,我想创建一个自定义编辑页面,所以我使用 useEditController 从 dataProvider.getOne() 获取数据。但是当我想重组数据时,由于未定义,它不能这样做。我认为这是因为 useEditController 是一个异步调用,我们必须在解构数据之前等待它。
这是我的 MyEdit.js 中的代码:
const {
basePath,
defaultTitle,
loaded,
loading,
record,
redirect,
resource,
save,
saving,
version,
} = useEditController(props)
const { videoKey } = record
当我运行它时,它说“无法解构'record'的属性'videoKey',因为它是未定义的。”
解决方案
实际上,useEditController
甚至在 API 响应对record
. 这意味着在为真record
之前是未定义loaded
的。
所以我建议你只尝试解构record
ifloaded
值是true
. 就像是:
if (!loaded) return null; // or a loading component of your own
const { videoKey } = record;
...
推荐阅读
- spring - spring reactive:检查用户是否存在
- r - R中的aes内的字符串常量 - ggplot2
- angular - 带有.Net核心的Angular App中的基本URL
- php - 每 10 秒运行一个 php 脚本作为 cron 作业
- javascript - ReferenceError:未定义 Gmail
- fiware - 上传数据到 HDFS Fiware Cosmos 全局实例出错
- html - Css中的相机视图角边框
- ios - 导航中的搜索栏
- mingw - 我使用命令提示符将 C:\MinGW\bin 添加到我的路径中,但过了一会儿它消失了
- api - Linkedin 公司统计 API 提供了错误的地理数据