我用Q代表承诺,但设立时的一些测试中,我发现我看不到出路在追赶,返回一个承诺在函数内部抛出异步错误。
我试图把它包装一个内部Q.when
和链接一个fail
和或为以下Q.fcall
和链接fail
,但我不能得到它的工作。
var func = function(){
var deferred = Q.defer();
setTimeout(function(){
throw new Error("async error");
},100);
return deferred.promise;
}
Q.fcall(func)
.then(function(){
console.log("success");
})
.fail(function(err){
console.log(err);
})
有没有办法来这样做呢?