JSFiddle - React, Tailwind, and code Playground
JavaScript
var f1 = function() {
return new Promise(function(resolve){
setTimeout(function() {
console.log(1);
resolve();
}, 30);
});
}
var f2 = function() {
return new Promise(function(resolve){
setTimeout(function() {
console.log(2);
resolve();
}, 20);
});
}
var f3 = function() {
return new Promise(function(resolve){
setTimeout(function() {
console.log(3);
resolve();
}, 10);
});
}
var seqRunner = function(deeds) {
return deeds.reduce(function(p, deed) {
return p.then(deed);
}, Promise.resolve());
}
seqRunner([f1, f2, f3]).then(function() {
console.log('done');
});