【发布时间】:2018-10-10 18:52:11
【问题描述】:
这就是我的上传功能目前的样子。我正在使用阿波罗突变来上传文件。
我不明白如何正确使用 try/catch 和 catch of the promise(client.mutate() 是)。
另外我将上传函数声明为async。
所以我想我把一些事情搞混了:-(
如何正确捕捉错误?
我需要两个鱼钩吗?如果我使用异步函数,我不应该替换 try/catch 吗?
export default async function upload (client) {
try {
return client.mutate({
mutation: uploadsMutation
}).catch(err => {
console.error(err)
})
} catch (error) {
Alert.alert('Error', 'Could not upload files')
}
}
【问题讨论】:
-
不,如果您使用过
await,则不需要.catch()调用 -
@Bergi
return的行为不像await?
标签: javascript async-await try-catch ecmascript-2017