TypeScript中是否可以使用泛型类型别名?

时间:2015-03-14 17:22:37

标签: generics typescript alias

TypeScript 1.4 introduced type aliases。这些示例显示了如何使用type MyGreeter = Greeter<string>之类的别名,但是是否可以使用通用别名?

以下示例无效

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

是否可以在不对其进行类型转换的情况下对泛型类别进行别名?

2 个答案:

答案 0 :(得分:3)

从TypeScript 1.6开始,现在可以实现。

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

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

1.6前回答

不,还没有。您可以在issue #1616中看到有关此问题的进展情况。

至于何时可以使用此功能......

  

最近我们一直忙于ES6调整和最近宣布的Angular 2.0相关功能。我们将(重新)评估这些类型系统特定问题中的一些,但目前没有具体的问题。 - Source

答案 1 :(得分:0)

根据release notes,现在可以从TypeScript 1.6开始使用泛型类型别名。