Хорошо, теперь вы знаете, что не пишите свой код аксиоса, как это:
export const fetchVenues = () => dispatch => {
axios.get(`my_api_link`)
.then( res => res.json())
.then( venues =>
dispatch({
type: FETCH_VENUES,
payload: venues
})
)
.catch( error => {
console.log(error);
});
};
И что теперь? Попробуйте использовать синтаксис ES8 async / await следующим образом:
export const fetchVenues = () => async dispatch => {
try {
const url = 'http://api.funwithredux.com/';
let { data } = await axios.get(url);
dispatch({ type: FETCH_VENUES, payload: data });
console.log(data);
} catch (e) {
console.log(e);
}
};
И, как вы можете видеть, вы можете использовать оператор try / catch для перехвата любых ошибок, если хотите, и я определенно добавлю журналы консоли, чтобы гарантировать, что вы также получаете данные с конечной точки API.