JSFiddle - React, Tailwind, and code Playground
by Keith Henry
HTML
<textarea id="log">
</textarea>
JavaScript
function log(s){
console.log(s);
document.getElementById('log').value += '\r\n' + s;
}
function ajaxPromise(url) {
return new Promise(function (resolve, reject) {
var request = new XMLHttpRequest();
request.addEventListener('load', function () {
if (request.status >= 200 &&
request.status < 300){
var json = JSON.parse(request.response);
resolve(json);
}
else
reject(Error(request.statusText));
});
request.addEventListener('error', function () {
reject(Error('Network')); // For nice stack traces this should be an Error
});
request.open('GET', url);
request.send();
});
}
const p = [1,2,3,4,5].map(async x => {
log(x);
const response = await fetch(`/echo/jsonp/?text=foo${x}&id=${x}&delay=3`,{method: 'GET'});
log( response);
const json = await response.json();
return json;
});
log(p);
const result = Promise.all(p).then(r=>log(r));
//console.log(result);