【发布时间】:2019-01-03 18:02:44
【问题描述】:
我尝试了一个 catch 函数,只是想了解错误情况,我的第二个函数依赖于第一个函数。因此,如果第一个函数失败,catch 将返回错误,但如果第二个函数失败,我想使用相同的 catch 来抛出错误,下面的代码不会发生这种情况,我可以实现这个逻辑还是我必须实现两个单独的 try 和 catch?
main.js
try {
//1st function
specialtyRefillsCache = await new CacheUtility().refillsCache(request.uniqueRxIds)
const rxInfosArray = specialtyRefillsCache.map((rxInfo: any) => {
return this.mapSpecialtyRequest(rxInfo);
});
if (rxInfosArray.length > 0) {
const tokenID = request.body.tokenID;
// 2nd function
const specialtyMembersInfoCache =
await new CacheUtility().MemberInfoCache(tokenID);
this.rxInfos = rxInfosArray;
}
} catch (e) {
return this.errorHandler(request, 'no patient info for given HBS ID');
}
【问题讨论】:
-
当“第二个函数失败”时你会抛出错误吗?
-
@quirimmo 是的,我有来自函数的错误,但问题是我如何返回给调用者,我是否需要为第二个函数添加另一个捕获?我想对第二个函数使用相同的错误处理程序
标签: javascript arrays angular try-catch