教程在 SaveContext 中引发上下文未定义错误 [英] Tutorial throws context is undefined error in SaveContext
问题描述
这可能是一个新手问题,但我正在通过 react-admin/Tutorial.html 工作,当涉及到使用 EditGuesser 时,编辑"页面失败,报告类型错误:上下文未定义".AFAIK,我已按照说明进行操作.
在添加创建和编辑功能"部分进行调整以引入edit={EditGuesser}"更改后报告错误.我可以看到教程代码已被编辑,因为 dataProvider 的 const 定义已被删除.是否还删除了其他内容?
如果错误页面已关闭,则底层页面仅显示出现问题.发生客户端错误,无法完成您的请求.'
感谢任何帮助.
错误详情是:
<前>类型错误:上下文未定义使用保存上下文prj_dir/node_modules/ra-core/esm/controller/details/SaveContext.js:23 20 |*/21 |导出 var useSaveContext = 函数(道具){22 |var context = useContext(SaveContext);>23 |如果 (!context.save || !context.setOnFailure) {24 |/**25 |* 该元素不在 <SaveContextProvider> 中26 |* 为了避免这种情况下的破损,回退到道具
开始于:
<前>保存按钮prj_dir/node_modules/ra-ui-materialui/esm/button/SaveButton.js:75<代码> 72 |var 通知 = useNotify();73 |var translate = useTranslate();74 |var setOnSave = useContext(FormContext).setOnSave;>75 |var _d = useSaveContext(props), setOnSuccess = _d.setOnSuccess, setOnFailure = _d.setOnFailure, setTransform = _d.setTransform;|^ 76 |var handleClick = 函数(事件){77 |//不推荐使用:使用 onSuccess 和 transform 而不是 onSave78 |if (typeof onSave === '函数') {
EditGuesser 在最新的 react-admin 版本 (3.11) 中被破坏.3.11.2 (https://github.com/marmelab/react-admin/pull/5728).同时,请使用3.10.4版本.
This may be a newbie problem, but I'm working though react-admin/Tutorial.html and when it comes to using the EditGuesser the 'Edit' page fails, reporting 'TypeError: context is undefined'. AFAIK, I've followed the instructions.
The error is reported after making the adjustment to introduce the 'edit={EditGuesser}' change in the 'Adding Creation and Editing Capabilities' section. I can see that the tutorial code has been edited, as the const definition of the dataProvider has been removed. Has something else also been removed?
If the error page is closed then the underlying page just states 'Something went wrong. A client error occurred and your request couldn't be completed.'
Any help is gratefully received.
The error details are:
TypeError: context is undefined useSaveContext prj_dir/node_modules/ra-core/esm/controller/details/SaveContext.js:23
20 | */
21 | export var useSaveContext = function (props) {
22 | var context = useContext(SaveContext);
> 23 | if (!context.save || !context.setOnFailure) {
24 | /**
25 | * The element isn't inside a <SaveContextProvider>
26 | * To avoid breakage in that case, fallback to props
which is kicked off from:
SaveButton prj_dir/node_modules/ra-ui-materialui/esm/button/SaveButton.js:75
72 | var notify = useNotify();
73 | var translate = useTranslate();
74 | var setOnSave = useContext(FormContext).setOnSave;
> 75 | var _d = useSaveContext(props), setOnSuccess = _d.setOnSuccess, setOnFailure = _d.setOnFailure, setTransform = _d.setTransform;
| ^ 76 | var handleClick = function (event) {
77 | // deprecated: use onSuccess and transform instead of onSave
78 | if (typeof onSave === 'function') {
The EditGuesser is broken in the latest react-admin version (3.11). A fix is incoming in 3.11.2 (https://github.com/marmelab/react-admin/pull/5728). In the meantime, please use version 3.10.4.
这篇关于教程在 SaveContext 中引发上下文未定义错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!