我将 Q 用于 Promise,但是在设置一些测试时,我发现我看到了捕获返回 Promise 的函数中抛出的异步错误的方法。
我试图将它包裹在 aQ.when
和链 afail
和或在 aQ.fcall
和 a 链下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);
})
有没有办法解决这个问题?