Aşağıdaki kod verildiğinde:
var arr = [1,2,3,4,5];
var results: number[] = await arr.map(async (item): Promise<number> => {
await callAsynchronousOperation(item);
return item + 1;
});
Bu da aşağıdaki hatayı üretir:
TS2322: 'Promise <sayı> []' tipi, 'sayı []' türüne atanamaz. 'Promise <sayı> türü,' sayı 'türüne atanamaz.
Nasıl düzeltebilirim? Birlikte nasıl çalışabilir async await
ve Array.map
çalışabilirim?
map
bekleyen ve çalışmasını bekleyecek bir işleve eşzamansız bir işlem gönderemezsiniz .
async
, o işlevi bir söz verdiğiniz anlamına gelir. Tabii ki, bir async haritası bir dizi söz döndürür :)
arr.map()
zaman uyumludur ve bir söz vermez.