2017-05-29 49 views
1

我是React js中的新成員,我對我的端點有疑問。 可以在.then()函數內調用另一個端點嗎? 這裏是我的代碼:可以在then()函數內調用另一個端點嗎? ReactJS Axios

this.props.getReviwerSurvey(surveyId, authToken.id) 
    .then(
    () => { 
     const { 
     reviewerSurvey } = this.state; 
     this.props.getAccount(reviewerSurvey && reviewerSurvey.relationships ? 
     reviewerSurvey.relationships.participant.id : null); 

    }, 
); 

this.props.getReviewerSurvey是我的第一個端點和我的第二個端點this.props.getAccount()看來,這是不是標準。如何在不調用回調中的this.props.getAccount的情況下獲取reviewerSurvey.relationships.participant.id的值?如果有另一種方式。想法是高度讚賞。

回答

1

您可以從第一個請求中返回已解決的承諾,並將其傳遞給下一個then鏈,這樣您將避免回調地獄。

一些普通的例子:

this.props.getReviwerSurvey(surveyId, authToken.id) 
    .then(() => { 
     const { reviewerSurvey } = this.state; 
     return reviewerSurvey; 
    }, 
).then((reviewerSurvey) => { 
    return this.props.getAccount(reviewerSurvey && reviewerSurvey.relationships ? 
     reviewerSurvey.relationships.participant.id : null); 
    }).then((participantId) => { 
     // do something with participantId or other data related to the account 
    }); 
+0

好吧,我會嘗試這種想法。謝謝! –

相關問題