0
我正在处理一些代码,负责在多个不同的打印机上打印文档。对于每台打印机,都会调用“sendToPrinter”并传递文档,打印机对象和打印机用来回调成功或失败的对象。回调是根据打印机类型同步/异步执行的,这是迄今为止的简化版本。根据多个回调结果执行最终回调
var x = 0;
var printDocument = function(document, printers) {
sendToPrinter(document, printers[x], ({
success: function() {
x±+;
if (x < printers.length) {
printDocument(document, printers);
}
},
failure: function() {
x++;
if (x < printers.length) {
printDocument(document, printers);
}
}
}));
};
除了这个我有两个回调到包装功能部件,其中一个是被称为如果任何打印作业是成功的,其他的,如果他们没有获得通过,这是林挣扎用。
如何最好地跟踪各种打印作业的结果,以便在完成所有打印作业后,我可以执行正确的回调?
'x±+'?答案似乎是*承诺*。 – bfavaretto
使用Async.js(适用于浏览器).https://github.com/caolan/async – Gireesh
这些工作是否有超时? –