簡體   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