Erstellen eines generischen Methodendekorators in Typescript

8

In diesem Code versuche ich, dass ein Benutzer einen Typ für die generische Decorator-Funktion fetchJson angibt.

Es würde so funktionieren:

  1. Schmücke eine Methode mit etwas wie: @fetchJson<User>
  2. Dann ersetzen wir die Funktion durch eine, die automatisch .then(res => res.json()) aufruft und geben einen typisierten Wert zurück, der in eine Promise eingewickelt ist.

Das Problem, auf das ich gestoßen bin, ist, dass ich nicht weiß, wie man die Rückgabe descriptor.value einem Benutzer-zugewiesenen T zuweist. Gibt es einen besseren Weg, dies zu tun? Ich fühle mich, als würde ich etwas völlig vermissen.

%Vor%     
ianks 06.01.2016, 16:21
quelle

1 Antwort

7

Vielleicht in etwa so:

%Vor%     
Amid 12.01.2016, 11:11
quelle