Зачем нужен redux-thunk?
Посмотрел курс по Redux, где приводился пример работы с асинхронным кодом с помощью
thunk, но зачем оно нужно, если такой же код можно описать и без него?
Вот пример с thunk:
//...
const asyncIncrementHandler = () => {
return (dispatch) => {
setTimeout(() => {
dispatch({type: 'ASYNC_INCREMENT'})
}, 5000);
}
}
//...
<Button onClick={() => {
dispatch(asyncIncrementHandler())
}}>ASYNC INCREMENT</Button>
//...
Тот же функционал, но без thunk:
//...
const asyncIncrementHandler = (dispatch) => {
setTimeout(() => {
dispatch({type: 'ASYNC_INCREMENT'})
}, 5000);
}
//...
<Button onClick={() => {
asyncIncrementHandler(dispatch)
}}>ASYNC INCREMENT</Button>
//...
Зачем нужен этот middleware, какая от него польза?