Я пытаюсь создать приложение на реагирующем языке, которое предполагает, что пользователь принимает два входа, а затем делает запрос к API и получает информацию о двух входах. У меня были проблемы с redux
и redux-thunk
и особенно с async
действиями.
Это код в моем приложении, с которым у меня возникли проблемы
export const fetchData = url => {
console.log("start Fetching");
return async dispatch => { // this is where the problem is
dispatch(fetchingRequest());
try {
const response = await fetch("https://randomuser.me/api/?results=10");
const json = await response.text();
if (response.ok) {
dispatch(fetchingSuccess(json));
console.log("JSON", json);
} else {
console.log("fetch did not resolve");
}
} catch (error) {
dispatch(fetchingFailure(error));
}
};
console.log("Fetched data");
};
После отладки функции я обнаружил, что при вызове функции fetchData
функция будет выполняться, но возвращаемый async dispatch
имеет поведение undefined
.
Выходные данные в отладчике при вызове функции должны быть
start Fetching
JSON file information/Error
но вывод в отладчике на самом деле
start Fetching