1
我想知道如何链接最后Q上的错误。如何链接Q承诺与以前的错误finally()
考虑下面的代码
function p1() {
throw new Error("p1 error");
}
function p2() {
throw new Error("p2 error");
}
function p3() {
return Q.fcall(p1)
.finally(function() {
return Q.fcall(p2);
});
}
p3()
.done();
与消息“P1误差”的误差,因为它是由覆盖错误“P2错误”丢失。我怎样才能抛出所有的错误(或结合错误)?
目前,我正在研究nodejs上的套接字连接。我使用.finally()在每次连接后关闭套接字。然而,.finally()之前的错误(例如:认证错误)将在.finally()中被覆盖1(例如:连接关闭错误)。所以,我想知道如何让所有的错误
感谢
这可能会有所帮助:http://rzrsharp.net/2012/10/01/error-isolation-with-promises.html –
谢谢,但链接对我的主题不是很有帮助。本博客将告诉您如何捕获承诺链以外的错误,而不是将错误处理程序放在链中的每个then()上。这种效果类似于通过抛出错误终止中间链。但是,我的情况是关于finally()的棘手部分。 finally()截获原始错误并用它的新错误替换它。 –