JSFiddle - React, Tailwind, and code Playground
JavaScript
function someFunction() {
var ret = new $.Deferred();
// setTimeout just to simulate `someFunction` taking 1000ms to complete its deferred
setTimeout(function () {
ret.resolve();
}, 1000);
return ret;
}
function logger(str) {
return function () {
console.log("Logger:", str);
};
}
function delay(time) {
return function () {
console.log("Delaying");
var ret = new $.Deferred();
setTimeout(function () {
ret.resolve();
}, time);
return ret;
};
}
someFunction()
.then(logger("foo"))
.then(delay(3000))
.then(logger("bar"))
.then(delay(3000))
.then(logger("baz"));