我有一个写在文件中的函数。
async myfunction() {
try {
const data = await achievementService.stepsPerDayAchievement()
console.log(data)
} catch(err) {
console.log(err)
}
}
我从这里调用另一个函数,该函数写入另一个称为成就的文件中。
async stepsPerDayAchievement(user, stepsCount) {
try {
await ApiCall()
} catch (err) {
return err
}
}
但是当我从此函数返回err时,它假定它为函数return,并且在data
中收到错误。我需要的是当我从
stepsPerDayAchievement
函数进入我的第一个文件function
有人可以帮我在这里做错什么吗
答案 0 :(得分:4)
您需要通过 stepsPerDayAchievement 方法引发错误:
async stepsPerDayAchievement(user, stepsCount) {
try {
await ApiCall()
} catch (err) {
throw new Error(err);
}
}
这样,它将落入调用函数的catch块中。
答案 1 :(得分:2)
由于异步函数返回了Promise,因此您不需要在stepsPerDayAchievement函数中尝试catch块。我认为您的代码应如下所示:
sendResponse(license)