拒绝承诺时停止代码执行

时间:2015-12-13 15:34:43

标签: javascript promise bluebird

我有以下承诺 - 返回功能:

ByMix

为什么代码在拒绝之下执行?拒绝时,我想停止执行function createJourney() { return new Promise((resolve, reject) => { // code ... doOperation((err, data) { // code ... return reject('We need to exit now!') }); // ---> Why is code stil executing here? <--- }) } 功能。

我正在使用蓝鸟的承诺。

1 个答案:

答案 0 :(得分:2)

想象

return new Promise((resolve, reject) => {
  doThing1()
  doOperation(..);
  doThing2()
})

没有理由不执行doThing2(),具体取决于doOperation()中发生的事情

doOperation可能会启动异步操作,并且在您的示例中调用reject之前很久就会调用doThing2。