Gunnar Bittersmann: asynchrones JavaScript

Beitrag lesen

@@Gunnar Bittersmann

Der macht das mit URLs statt Requests, aber das ist ja das gleiche Prinzip.

Was ist überhaupt der Unterschied zwieschen fetch(url) und fetch(new Request(url))?

Mit Array der benötigten Ressourcen sieht’s so aus:

var urls = [
  'a.json',
  'b.json'
];

Promise.all(
	urls.map(
		url => fetch(url).then(response => response.json())
	)
).then(values => {
	var aData = values[0];
	var bData = values[1];

	// do something with aData and bData
});

Unschön daran ist noch, dass man später beim Auslesen von values sich genau an die Reihenfolge halten muss wie man sie im Array urls festgelegt hatte – ohne dass dies im Code ersichtlich wäre.

Wie kommt man aus der Nummer raus? urls als Array von Objekten?

var urls = [
  {
    name: 'aData',
    url: 'a.json'
  },
  {
    name: 'bData',
    url: 'b.json'
  }
];

LLAP 🖖

--
“When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory