私はプロミスに Q を使用していますが、いくつかのテストをセットアップするときに、プロミスを返す関数内でスローされた非同期エラーをキャッチする方法を発見しました。
私はそれを a 内にラップしてチェーン化しようとしましたがQ.when
、fail
以下のように aQ.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);
})
これに方法はありますか?