Gegeben den folgenden Code:
var arr = [1,2,3,4,5];
var results: number[] = await arr.map(async (item): Promise<number> => {
await callAsynchronousOperation(item);
return item + 1;
});
Dies führt zu folgendem Fehler:
TS2322: Der Typ 'Versprechen <Nummer> []' kann nicht dem Typ 'Nummer []' zugewiesen werden. Der Typ 'Versprechen <Nummer> kann nicht dem Typ' Nummer 'zugewiesen werden.
Wie kann ich es reparieren? Wie kann ich machen async awaitund Array.mapzusammen arbeiten?
map, die eine synchrone erwartet und erwartet, dass sie funktioniert.
async, diese Funktion ein Versprechen zurückgibt. Natürlich gibt eine Karte von Async eine Reihe von Versprechungen zurück :)
arr.map()ist synchron und gibt kein Versprechen zurück.