JSFiddle - React, Tailwind, and code Playground

by cannap

HTML

<p id="Alpha"></p>
<p id="Beta"></p>
<p id="Gamma"></p>

JavaScript

// Sequenz asynchroner Operationen
var genFn = function*(){
  $('#Alpha').text(yield $.post('/echo/html/', { html: 'Test 1', delay: 1 }));
  $('#Beta').text(yield $.post('/echo/html/', { html: 'Test 2', delay: 1 }));
  $('#Gamma').text(yield $.post('/echo/html/', { html: 'Test 3', delay: 1 }));
};

// Arbeitet eine Sequenz ab
function async(fn){
  var gen = genFn();
  var resume = function(promise){
    promise.done(function(text){
      var next = gen.next(text);
      if(!next.done){
        resume(next.value);
      }
    });
  };
  resume(gen.next().value);
}

// Und los!
async(genFn);