我在Node.js项目中使用async/await
。在某些地方,我需要从async
函数返回错误。如果我使用Promises,我可以通过这种方式实现它:
function promiseFunc() {
return new Promise((res, rej) => {
return rej(new Error('some error'))
})
}
但我使用的是async
函数,因此没有res
和rej
方法。
所以,问题是:throw
函数中的async
错误可以吗?或者它被认为是一种好/坏的做法?
我想做的一个例子:
async function asyncFunc() {
throw new Error('some another error')
}
我也可以这样重写:
async function anotherAsyncFunc() {
return Promise.reject(new Error('we need more errors!'))
}
但第一个看起来更清楚,我不确定应该使用哪一个。
答案 0 :(得分:7)
我愿意:
Promise.reject(new Error(error));
但我认为这取决于个人喜好?您可以随时返回vim app/view/filename.html.erb
。