导入react-admin组件时出现useRecordContext导出错误求助
解决react-admin中
useRecordContext导入错误的方案 核心原因
useRecordContext是react-admin v3.0.0及以上版本才新增的Hook API,你的项目依赖版本低于v3,所以会出现导入失败的错误。
解决措施
1. 升级react-admin版本
这是最直接的解决方案,执行对应包管理器的命令更新到最新稳定版:
- 使用npm:
npm install react-admin@latest --save - 使用yarn:
yarn add react-admin@latest
2. 升级后的注意事项
- react-admin v3+依赖React 16.8.0及以上版本(因为大量使用Hook),请确保你的项目中
react和react-dom版本满足要求,若不满足需同步升级。 - v3版本对部分旧API做了变更(比如移除了
withRecord等高阶组件,改用Hook),请对照官方文档调整相关代码,确保兼容。
3. 临时替代方案(不升级版本时)
如果暂时无法升级到v3+,可以使用react-admin v2中的withRecord高阶组件来获取当前记录:
import { withRecord } from 'react-admin'; const YourComponent = ({ record }) => { return <div>{record ? record.name : '无记录'}</div>; }; export default withRecord(YourComponent);
内容的提问来源于stack exchange,提问作者Daniel Felipe Henao Toro
相关产品推荐
相关产品推荐

