这可能是一个非常糟糕的问题,但我正在尝试将Promise-IO与nodeJS一起使用。我正在尝试使用seq函数。我有类似的东西。
seq = require("promised-io/promise").seq,
var functions= new Array(function1, function2);
seq(functions, startingDataObject)
在function1中,我有以下内容。
function function1(startingDataObject) {
var deferred = new Deferred();
when(function3(startingDataObject),
function (returnedData) {
//Some logic
deferred.resolve(returnedData);
},
function (err) {
console.log(err);
throw err;
});
deferred.promise;
}
我看到发生的事情是function2在deferred.promise之后被解雇了。我不确定我的谷歌技能是否缺乏,但我似乎没有看到很多关于如何使用这种方法的例子。所以我的问题是如何使用Promise-IO进行同步顺序调用。
https://github.com/kriszyp/promised-io#seq
由于
答案 0 :(得分:2)
发现了这个问题。我错过了function1中的return deferred.promise。上面的例子运作得很好。