await dispatch не работает
а ты из экшна возвращаешь промис?
возвращаю async/await функцию
чтобы что-то эвэйтить, нужно вернуть промис
const doSmth = (data) => async (dispatch) => {}
так dispatch же всё равно не вернёт промис, или я ошибаюсь?
если ты его вернёшь, то вернёт
а если не вернешь, то не вернет)
а разве dispatch не обязан вернуть новый state? как он тогда может вернуть еще и промис? я только еще изучаю реакт, просто пытаюсь понять, это не наезд)
а что там внутри редьюсера тогда?
что обычно: action + state
Вот есть такая функция, я не совсем понимаю где тут нужно возвращать промис, можешь подсказать? export const fetchLogin = (credentials) => async (dispatch) => { dispatch(fetchLoginRequest()) try { const response = await login(credentials) localStorage.setItem('session', JSON.stringify(response.data)) dispatch(fetchLoginSuccess(response.data)) } catch (error) { dispatch(fetchLoginFailure(error)) } }
case Xxx: return {...new state} а как он при этом еще и промис возвращает? не могу понять ...
да промис не попадает в редьюсер
я подумал что это тело санки
Обсуждают сегодня