猿问

redux-thunk的作用为什么不用异步的dispatch(action)来代替?

// redux-thunk

const fetchData = (params) => (dispatch) => {

  setTimeout(() => {

    dispatch({action: 'GET_DATA', payload: 111})

  })

// 异步dispatch

const fetchData = (params) => ({action: 'GET_DATA', payload: 111});


setTimeout(() => {

  dispatch(fetchData(...))

})

不明白这两种方式有什么区别。

求大佬举实例说明下。 万分感谢


MYYA
浏览 471回答 1
1回答

慕容708150

redux-thunk的主要作用应该不是异步同步的问题,在你使用redux-thunk之前,只能dispatch一个action对象:dispatch({type:'DO_SOMETHING'})而使用他之后,你可以dispatch一个函数dispatch(function (dispatch) {    $.get('/api/somepath', function(users) {        dispatch({            type: 'FETCH_USERS_SUCCESS',            users: users,        });    });});你可以在函数里面做你想做的逻辑处理等工作
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答