我正在使用jQuery的承诺。如何在所有承诺解决后执行回调?
我有一个场景,我有两个承诺。
如果promise1拒绝或解决,那么system1应分别拒绝或解析。
如果promise2拒绝或解决,system2应该解决。
函数X应该在两者都解决并且system1和system2都解决后调用。
我想:
var dp = $.when(promise1, promise2);
dp.done(function(one,two){
X();
}).fail(function(){
// promise1 might have not settled as of yet.
Should call X or not ?
});
但只要承诺的一个失败返回。所以我的promise1在我的失败被调用的时候没有解决。
我该怎么做?
您希望两个承诺都能运行结果,并且在两个完成后都想运行X()方法。这是你想要的吗? –
@Basha请参阅编辑的问题。我真的想让X被称为iff promise1已解决,但只有在两个承诺都已解决之后。 –