2015-03-14 11 views
5

TypScript 1.4 introduced type aliases. Die Beispiele zeigen, wie man Aliase wie type MyGreeter = Greeter<string> verwendet, aber ist es möglich, generische Aliase zu haben?Sind generische Typ-Aliase in TypeScript möglich?

Die folgenden Beispiele funktionieren nicht:

type GenericAlias<T> = OriginalType<T> 
type GenericAlias = OriginalType<T> 

Ist es überhaupt möglich, generische Typen Aliasnamens ohne sie typecasting?

Antwort

3

Ab TypeScript 1.6 ist dies jetzt möglich.

// from #1616: 
type Lazy<T> = T | (() => T); 

var s: Lazy<string>; 
s = "eager"; 
s =() => "lazy"; 

Pre-1.6 Antwort

Nein, noch nicht. Sie können Entwicklungen in issue #1616 sehen.

Was, wenn diese Funktion zur Verfügung stehen wird ...

In letzter Zeit haben wir mit ES6 Ausrichtung und die vor kurzem angekündigte Angular 2.0 bezogene Funktionen ziemlich beschäftigt gewesen. Wir werden einige dieser typsystemspezifischen Probleme (wieder) evaluieren, aber es gibt momentan kein konkretes Datum für solche Probleme. - Source

+1

Derzeit in 'Master'-Zweig, siehe https://github.com/Microsoft/TypeScript/pull/3397. –

+0

@TN. cool. Ich werde nachsehen, wann es veröffentlicht wird, und versuchen, daran zu denken, diese Antwort zu aktualisieren. –

0

Nach dem release notes, generische Typ-Aliasnamen sind nun möglich, beginnend mit Typoskript 1.6.

Verwandte Themen