javascript - 如何从异步调用中返回错误
问题描述
我有一个写在文件中的函数。
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 时,它假设它是函数返回并且我在data
. 我需要的是当我从stepsPerDayAchievement
函数中抛出错误时,它会转到我的第一个文件中的错误部分function
有人可以帮助我在这里做错了吗
解决方案
您需要从stepsPerDayAchievement方法中抛出一个错误:
async stepsPerDayAchievement(user, stepsCount) {
try {
await ApiCall()
} catch (err) {
throw new Error(err);
}
}
这样,它将落在调用函数的 catch 块中。
推荐阅读
- python - 如何使用 pandas 从 Azure Blob 读取 .xlsx 格式文件而不创建临时文件
- python - 为什么 Pytorch 给我一个数据类型错误:Float vs Double?
- linux - 如何保护 ClamAV 守护进程和客户端之间的通信?
- python - 使用 Python 和 Scapy 计算 SYN 和 ACK 数据包的数量
- android - Flutter - 在 MIUI 11.0.1 上没有播放 Flutter 本地通知声音?
- javascript - 正则表达式 - 在最后一个连字符/破折号之前提取文本
- php - 如何将多个类添加到 the_post_pagination 数组?
- gradient - 如何让 Vega/Vega-Lite 渐变在放大时表现正确
- sed - 用 sed 将 makefile 中的字符串替换为 $
- oracle - 过滤数据时未在预期位置找到 FROM 关键字