在打字稿,我们可以有字符串字面类型,使我们能够做的事情一样:打开一个字符串类型的文字值
type HelloString = "Hello";
这让我这样定义字符串枚举的东西如下:
namespace Literals {
export type One = "one";
export type Two = "two";
}
,然后我可以定义一个联盟:
type Literal = Literals.One | Literals.Two;
有没有一种方法来提取的的独特价值作为Literals.One
的类型?
这样做的原因是,当我这样定义一个函数:
function doSomething(literal : Literal) {
}
我真的很想做到以下几点:
doSomething(Literals.One);
但我不能。我必须写: