我正在通过api调用在运行时获取资源。我有一个create
视图,可以创建资源。如何重新加载react-admin redux store
,以便使用新资源更新边栏?
我想到了以下示例here
const saveWithNote = (values, basePath, redirectTo) => {
console.log('creating new dataset...')
crudCreate('datasets', values, basePath, redirectTo);
}
我的想法是在此处触发一些操作,该操作可能触发商店状态更改并重新加载页面,但出现错误
TypeError: Cannot read property 'type' of undefined
(anonymous function)
/form/formMiddleware.js:21
18 | var previousLocation;
19 | return function (next) {
20 | return function (action) {
> 21 | if (action.type !== LOCATION_CHANGE || action.payload.state && action.payload.state.skipFormReset) {
| ^ 22 | return next(action);
23 | } // history allows one to redirect to the same location which can happen
24 | // when using a special menu for a create page for instance. In this case,
这是我的工具栏
const DatasetCreateToolbar = props => {
return (
<Toolbar {...props} >
<SaveWithNoteButton
label=" Save "
redirect="list"
submitOnEnter={false}
variant="flat"
/>
</Toolbar>
)
};
其余代码与示例link
中的代码相同是否有更好的方法来触发商店重新加载以使边栏显示创建的新资源?
答案 0 :(得分:0)
我弄清楚了为什么会出错。
const saveWithNote = (values, basePath, redirectTo) => {
console.log('creating new dataset...')
crudCreate('datasets', values, basePath, redirectTo);
}
我正在调用crudCreate
函数,而不是返回它。
代码应该是
const saveWithNote = (values, basePath, redirectTo) => {
console.log('creating new dataset...')
return crudCreate('datasets', values, basePath, redirectTo);
}
我仍然不确定如何刷新商店并重新加载侧边栏