Недавно я столкнулся с небольшой проблемой с моим запросом патча Ax ios. Когда я отправляю запрос на исправление, я заметил, что он возвращает данные моей саге до того, как запрос на исправление фактически завершился, я не могу понять, почему, и я заметил, что он правильно работает с моим запросом get. Любая помощь приветствуется. Ниже мой запрос на патч, а затем моя сага о редуксе. Также я упомяну, что моя сага завершается успешно, однако она извлекает данные не в то время.
export const patchVendorAPI = (token, form) => {
const newForm = new FormData();
// console.log(form.images.length);
for (const [key, value] of Object.entries(form)) {
if (key !== 'images') {
newForm.append(key, value);
}
}
try {
if (form.images !== undefined) {
for (let item of form.images) {
newForm.append('images', item);
}
}
} catch (err) {
throw err;
}
axios
.patch('http://localhost:5000/api/v1/vendors/mine', newForm, {
headers: {
'Content-type': 'multipart/form-data',
authorization: token,
},
})
.then((res) => {
console.log(res);
return res;
})
.catch((err) => {
console.log(err);
throw err;
});
};
// КОД САГА
export function* patchVendor({ payload: { form } }) {
try {
console.log(form);
const userAuth = yield fetchToken();
const vendor = yield patchVendorAPI(userAuth, form);
console.log(vendor);
yield put(patchVendorSuccess(vendor));
} catch (error) {
yield put(patchVendorFailure(error));
}
}