有没有办法在TypeScript中获取函数调用者类型的 名称 ?或者,有没有办法获得当前对象类型的 名称 ?
类似的东西:
export class SomeData {
sampleFunc() {
console.log(this.getTypeName());
}
//or
anotherFunc(caller: any) {
console.log(caller.getTypeName());
}
}
getTypeName
是此处所需的功能。 TypeScript中的类型在编译后消失。有typeof
(获取类定义对象本身)但我看不到如何获取名称。
这样做的一个用法是使用console.group(name)
和console.groupEnd()
进行更清晰的记录 - 至少在开发时。
修改
据我搜索过,有一个Polyfill for Metadata Reflection API提案" 将装饰器添加到ES7,以及用于装饰器元数据的ES7 Reflection API的原型&#34 ;.可以与decorators in TypeScript一起使用它。
答案 0 :(得分:4)