Używanie Q.promises: jak złapać rzut asynchroniczny?
Używam Q dla obietnic, ale podczas konfigurowania niektórych testów odkrywam, że widzę sposób na wyłapywanie asynchronicznych błędów wyrzucanych w funkcji, która zwraca obietnicę.
Próbowałem zawinąć go w aQ.when
i przykuty łańcuchowofail
i lub jak poniżej aQ.fcall
i przykuty łańcuchemfail
, ale nie mogę go uruchomić.
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);
})
Czy istnieje sposób na to?