繁体   English   中英

ReactJS和Promise:那么如何调用catch?

[英]ReactJS and Promise: How to call catch inside then?

因此,我有一个动作创建器(返回一个函数-我使用redux-thunk)。 在创建者返回的函数内部,我调用了一个dispatch方法, then链接thencatch方法。 这里看起来像:

export function actionCreator(someData) {
    (dispath, getState) => {
        return dispatch(someAction)
        .then(resp => {
            //do something
            // GO TO CATCH
        })
        .catch(err => {
            return err;
        })
    }
}

您在那看到GO TO CATCH评论吗? 那么,我怎样才能从那里去到捕获区呢?

谢谢!

如果你想从身体跳.then()到以下.catch()最简单的方法是抛出一个错误:

throw new Error('I meant to blow up here.');

您引发的错误将传递给.catch()的主体.catch()在您的情况下为err变量)。

请注意,您的示例看起来已经很可疑:您的catch块正在捕获错误,然后返回 ,就好像该错误是常规值一样,这意味着任何基于上游promise的处理都将假定调度已成功。 您确定那是您想要的吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM