我的设置与此非常相似
const Promise = require("bluebird");
function reject() {
return Promise.reject("foo");
};
process.on("unhandledRejection", () => {
console.log("Promise rejected");
});
Promise.try(() => {
reject();
return;
}).catch(console.log);
.catch
捕获拒绝并打印出foo
错误消息,但它也会触发unhandledRejection
。
如果我将那个被拒绝的Promise归还,那就有效:
reject();
return;
将更改为
return reject();
但问题是,我需要在返回另一个之前捕获非返回的Promise。 这是蓝鸟的尝试应该如何工作,还是我错过了什么?