如何在这里链接承诺:
.then(resp => {
if (xxxxx) {
return nextPromise()
} else {
// stop promise chain
return
}
})
.then(resp => {
// nextPromise callback function..
})
我认为回归会阻止链条,但我错了。
答案 0 :(得分:1)
如果您不想通过抛出错误来破坏链,那么解决方案就是嵌套链:
.then(resp => {
if (xxxxx) {
return nextPromise().then(resp => {
// nextPromise callback function..
});
}
})
这仍然允许全局.catch()
,您不必在其中明确检查为结束链而抛出的错误。缺点是,如果您有许多这些条件,最终会得到类似于"callback hell"的内容。