TypeScript · Senior · Frage 43 von 75
Wie typisiert man eine Funktion ähnlich Promise.all über einem Tupel von Promises?
- 1Ein Generic
Tfür alle Promises undPromise<T> - 2Ein generisches Tupel
[...T]und ein Mapped Type mitAwaited<T[K]> - 3Ein Array
Promise<any>[]und ein ErgebnisPromise<any[]>
Antwort zeigen
Richtige Antwort: Ein generisches Tupel [...T] und ein Mapped Type mit Awaited<T[K]>
Erklärung
[...T] gibt den Hinweis, ein Tupel statt eines Arrays abzuleiten, und der homomorphe Mapped Type entpackt jedes Element: all([fetchUser(), fetchPosts()]) → Promise<[User, Post[]]>. Varianten mit any oder einem einzigen T verlieren die Typen der Positionen.