我知道我可以定义字符串联合类型,将变量限制为可能的字符串值之一:
type MyType = 'first' | 'second'
let myVar:MyType = 'first'
我需要从常量字符串构造这样的类型,例如:
const MY_CONSTANT = 'MY_CONSTANT'
const SOMETHING_ELSE = 'SOMETHING_ELSE'
type MyType = MY_CONSTANT | SOMETHING_ELSE
但由于某种原因,它不起作用;上面写着MY_CONSTANT refers to a value, but it being used as a type here
.
为什么Typescript允许第一种情况,但不允许第二种情况?我用的是Typescript 3.4.5