resolve() and reject()
Call deferred.resolve(value) to signal success and deferred.reject(reason) to signal failure. Once either is called, the state is fixed.
Call deferred.resolve(value) to signal success and deferred.reject(reason) to signal failure. Once either is called, the state is fixed.
function waitFor(ms) {
const dfd = $.Deferred();
setTimeout(function() {
dfd.resolve(ms + "ms elapsed");
}, ms);
return dfd.promise();
}
waitFor(2000).done(function(msg) {
console.log(msg); // "2000ms elapsed"
});
A Deferred can only be resolved or rejected once — subsequent calls are ignored.