我在Typescript中注意到以下语法。
export type feline = typeof cat;
据我所知,type
不是built-in basic type,也不是接口或类。实际上它看起来更像是别名的语法,但我无法找到参考来验证我的猜测。
那么上述陈述意味着什么?
答案 0 :(得分:60)
这是type alias - 它用于为类型指定其他名称。
在您的示例中,feline
将是cat
所属的类型。
这是一个更完整的例子:
interface Animal {
legs: number;
}
const cat: Animal = { legs: 4 };
export type feline = typeof cat;
feline
将是Animal
类型,您可以将其用作任何您喜欢的类型。
const someFunc = (cat: feline) => {
doSomething();
};
export
只是从文件中导出它。这与此相同:
type feline = typeof cat;
export {
feline
};