现在我有funcA,funcB,arrayA和arrayB。在funcA中,arrayB将通过请求一些外部信息来填充自己,执行此操作的时间各不相同。我希望它在arrayB.length == arrayA.length之后执行funcB,arrayB是一个全局变量,它的内容将在funcB中使用。假设我需要使用JQuery deferred和promise..so,我试过了
var arrayB = [];
var hi = funcA();
hi.then(funcB());
funcA(){
var Dfd = $.Deferred();
arrayB.forEach(function(x, i){
some external retrieval;
if (arrayB.length == arrayA.length){
Dfd.resolve(arrayB);
}
})
return Dfd;
}但这并没有什么帮助。我该怎么改呢?
发布于 2017-07-06 03:58:08
我通过这样做解决了这个问题:
hi.done(function(){funcA()});https://stackoverflow.com/questions/44915121
复制相似问题