gpt4 book ai didi

javascript - 在 javascript 中使用 Promise.reject 的正确方法是什么

转载 作者:太空宇宙 更新时间:2023-11-04 02:54:42 24 4
gpt4 key购买 nike

我有以下代码

new Promise((resolve, reject) => { 
resolve(apiRequest(data))
reject(console.log('Error'))
}).then(response)

两种方法(解决和拒绝)都被触发,但我只想在出现问题时才调用拒绝。如果在这种情况下出现问题,我如何抛出错误?

我检查了这一点,但似乎我无法使用 If 语句来进行该检查。

new Promise((resolve, reject) => {
const printResult = apiRequest(data)
console.log(printResult) //Outputs Promise {<pending>}
resolve(printResult) //Then it works
reject(console.log('Error'))
}).then(response)

拒绝 promise 的正确方法是什么?

最佳答案

最简单的方法是使用 if 条件。即

new Promise((resolve, reject) => {
// do something...
if(somethingGoodHappened) {
resolve(data)
} else {
reject(error)
}
})

但通常在处理异步请求时,您调用的内容通常会返回一个 Promise,因此您可以在其中附加 thencatch 回调。

apiRequest(data)
.then((result) => {
// all good
})
.catch((err) => {
console.log(err)
})

关于javascript - 在 javascript 中使用 Promise.reject 的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56216849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com