Я пытаюсь выполнить некоторые действия после загрузки всех моих данных, но у меня возникают проблемы с обещаниями, которые не обрабатываются должным образом.
export function waitForAll() {
return function (dispatch, getState) {
Promise.all([
dispatch(getCharacteristics()),
dispatch(getItems())]
).then(()=>{
let state = getState();
dispatch(update(state))
}).catch(function(err){
console.log(err);
});
}
}
И вот две функции, вызываемые для этого обещания:
export function getCharacteristics() {
return function (dispatch) {
axios.get('api/charac').then((response) =>
{
dispatch(fetchCharacteristics(response.data));
}).catch(error =>{
console.log(error);
});
}
}
И
export function getItems() {
return function (dispatch) {
axios.get('api/45897').then((response) =>
{
dispatch(fetchItems(response.data.equipements));
}).catch(error =>{
console.log(error);
});
}
}
Мои состояния не обновляются, это означает, что мои обещания не обрабатываются должным образом, у меня начальное состояние, как [].
Альтернативой может быть componentDidMount () в React для вызова этой функции, но я не уверен, как проверить, что ОБА состояния загружены правильно (разные компоненты)
Я не могу понять, как я могу заставить его работать, любая помощь будет приветствоваться!