У меня есть модалка с множеством полей, которые обрабатываются на сервере. Суть в том, что мне надо отрисовать ошибки, если они есть, если нет просто закрыть окно и сохранить. Ошибки кладутся в редакс после запроса на сервер, но проблема в том, что при открытии окна ошибок никаких еще нет и даже если запрос на бек возвращает ошибку, модалка закрывается, потому что они еще не появились в редаксе. await перед закрытием не помогает
const handleSubmit = async () => {
if (startTime !== endTime) {
const data = {
title: eventName,
subject: lesson,
startTime: getUtcTime(startTime, 'LT', startDate),
endTime: getUtcTime(endTime, 'LT', startDate),
link: link || null,
repeat: age,
isOnline,
date: startDate.toISOString(),
};
if (!editEventData) {
await addEvent(data, +unitId);
if (!_.isEmpty(scholars.units) && !hasErrors) {
setEventName('');
setAge('');
setLink('');
setLesson('');
handleClose();
}
} else if (editEvent && editEventData.id) {
await editEvent(+unitId, editEventData.id, data);
if (!_.isEmpty(scholars.units) && _.isEmpty(errorMessages)) {
handleClose();
}
}
}
};