在Typescript中命名联合类型

the*_*ors 1 types typescript typescript2.0

我正在开发一个项目,在整个项目中广泛和一致地使用Union类型.我想命名一个特定的联合类型,这样我就不必在整个代码中明确定义联合(引入在某处出错的可能性).

例如,而不是:

function doSomething(parm: FirstType | SecondType){...}
function doSomethingElse(parm: FirstType | SecondType){...}
Run Code Online (Sandbox Code Playgroud)

我希望有类似的东西:

class compositeType = FirstType | SecondType;
function doSomething(parm: compositeType) {...}
function doSomethingElse(parm: compositeType) {...}
Run Code Online (Sandbox Code Playgroud)

这将有助于遵守DRY原则,并减少我的代码库中的错误.这可能在打字稿中吗?注意:我不控制FirstType和SecondType,因为它们是从第三方库返回的,所以在这里使用继承不是一个选项,AFAIK.

Jua*_*des 5

查看类型别名

type FirstOrSecond = FirstType | SecondType;
Run Code Online (Sandbox Code Playgroud)