React Admin: onSuccess не работает должным образом на <Edit>компоненте - PullRequest
2 голосов
/ 11 июля 2020
Функция

onSuccess не работает должным образом на react-admin,

мой код:

const onSuccess = () => {
   redirect('list', props.basePath);
};


<Edit 
  onFailure={onFailure}  
  onSuccess={onSuccess}  
  title="Ediar Usuário" 
  {...props} 
>
  <SimpleForm 
     variant="standard" 
     toolbar={<CustomToolbar />} 
  >
</Edit>

В первый раз она работает отлично, но во второй раз ничего не происходит.

Даже не запускать событие сохранения

Ответы [ 2 ]

2 голосов
/ 30 июля 2020

Я не знаю, применимо ли это к вашему варианту использования, но установка undoable на false в компоненте Edit работает

1 голос
/ 10 августа 2020

У меня та же проблема.

Совет Джаспера Берналеса сработал.

Я изменил свой код с:

<Edit
      onSuccess={onSuccess}
      {...props}
    >

на:

<Edit
      onSuccess={onSuccess}
      undoable={false}
      {...props}
    >

тогда ... это работает!

Похоже, проблема вызвана принудительным вмешательством "useRedirect" или "useRefre sh" в задержку, запланированную функцией "undoable". документ, похоже, нуждается в обновлении этой части. просто проверьте это в React-Admin Docs.:

Вы можете отключить это поведение, установив undoable = {false}. С этой настройкой нажатие на кнопку «Удалить» отображает диалоговое окно подтверждения. Действия «Сохранить» и «Удалить» становятся блокирующими и задерживают обновление sh экрана до тех пор, пока поставщик данных не ответит.

...