javascript - 为什么 redux thunk 返回 Promise?

标签 javascript reactjs redux middleware redux-thunk

我作为一个初学者 React 开发者正在学习 redux-thunk 中间件,我不明白为什么函数(由 redux-thunk 返回)返回一个 Promise(由 fetch() 返回)

我尝试过不退回任何东西,结果成功了,那我们为什么要退回呢?

export function getCourses() {
  return fetch(baseUrl)
    .then(handleResponse)
    .catch(handleError);
}

export function loadCourses() {
  return function(dispatch) {
    dispatch(beginApiCall());// dispatch some synchronous action

    return courseApi
      .getCourses().then(courses => {
        dispatch(loadCourseSuccess(courses));
      }).catch(error => {throw error;});
  };
}  

对于名为 MyComponent 的组件调度 loadCourses() 操作

function MyComponent(props){
    .......
    useEffect(() => {
        loadCourses()
    });

    const mapDispatchToProps = {
        loadCourses,
        .....
    }
}

最佳答案

我想我得到了答案(来自同事)。

如果您想链接某些事件,您的操作需要返回一个 Promise。

这只是在返回结果后允许链接事件的好方法!

关于javascript - 为什么 redux thunk 返回 Promise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57645490/

相关文章:

javascript - 我可以使用 Jest 和 Enzyme 测试将数据映射到子组件的函数吗

javascript - Ant 设计 : How can I disable border-bottom of a menu item on hover?

javascript - 提交 JQuery 表单 $.post() 处理成功时显示的消息

css - 来自 css 样式表的 React 类样式不起作用

javascript - 关于存储负载问题的推送网格

javascript - NodeJs sendFile 没有加载 webpack 包

javascript - API 数据未输出 | react 、Redux

node.js - 对某些案例问题的警告 computedMatch 使用react?

javascript - 从 Node.js 调用 SOAP 服务

javascript - 使用javascript获取与特定周匹配的每隔一个星期日