我应该在reactjs中使用返回类型的动作调度吗?

时间:2017-06-02 12:00:00

标签: reactjs redux store redux-thunk

我对使用dispatch感到困惑。请参阅下面的代码。

export function getUserInfo(isDeviceinfo) {
    return (dispatch) => {
        dispatch({
            type: REQUEST_DEVICE_MODEL_RESET,
            isDeviceinfo,
        });
    };
}

export function getUserInfo(isDeviceinfo) {
    return => {
        type: REQUEST_DEVICE_MODEL_RESET,
        isDeviceinfo,
    };
}

现在应该使用哪一个。请建议我。

1 个答案:

答案 0 :(得分:2)

如果您不需要执行任何异步操作,请使用

export function getUserInfo(isDeviceinfo) {
      return{
             type: REQUEST_DEVICE_MODEL_RESET,
             isDeviceinfo,
         };
    }

如果需要执行异步操作,请使用dispatch。

function getUserInfo(isDeviceinfo) {
    return (dispatch)=>{
       //perform a async operation like this http call
        return fetch(SOME_URL).then(j=>j.json()).then((d)=>{
             dispatch({
                 type: REQUEST_DEVICE_MODEL_RESET,
                 isDeviceinfo,
             })
        })


    }
}