【发布时间】:2020-07-23 06:35:55
【问题描述】:
在 Typescript 中有一个嵌套的异步函数,我想在其中返回一个对象的承诺。
- 我是否需要这两个函数都包含一个“catch”,我返回一个 promise.reject() 还是只需要一个 Catch?
- 这种格式仍然给我一个错误“声明类型既不是 'void' 也不是 'any' 的函数必须返回一个值”,因为在函数之外没有 return 语句。即使在整个过程中使用 try catch 也会给我同样的错误。
async getContactByGUIDQuery(GUID: string): Promise<Contact> {
this.findContactByGUID(GUID).then(async (query) => {
this.querySalesforce(query).then(async (response) => {
return response.compositeResponse[0].body
}).catch((err) => {
return Promise.reject(err)
})
}).catch((err) => {
return Promise.reject(err)
})
}
【问题讨论】:
-
return this.querySalesforce...?不,根本没有必要立即捕获错误以返回具有相同错误的被拒绝承诺。
标签: typescript asynchronous nested arrow-functions