Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Q promises single error catcher
var Q = require('q');
function delaydo(x) {
var deferred = Q.defer();
setTimeout(function() {
if (x === 2) {
console.log("reject: "+x);
deferred.reject(x);
}
else {
console.log("resolve: "+x);
deferred.resolve(x);
}
}, 1000);
return deferred.promise;
}
delaydo(1)
.then(function() {
return delaydo(2);
})
.then(function() {
return delaydo(3);
})
.then(function() {
return delaydo(4);
})
.catch(function(err) {
console.log("Caught err: "+err);
});
resolve: 1
reject: 2
Caught err: 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.