如何在TypeScript中声明lambda风格的函数名属性?
How do I declare lambda-style function name property in TypeScript?
我在一个Node项目中使用TypeScript 2.0。Node中的函数有一个name属性。我已经尝试扩展TypeScript Function接口来声明属性,像这样:
interface Function
{
name: string
}
interface IAsyncInfo {
name: string,
args: any[],
func: (...args: any[]) => any
}
var info: IAsyncInfo;
var name = info.func.name
但是TypeScript仍然在最后一行抱怨:
Property 'name' does not exist on type (...args: any[]) => any
Then I try:
var name = (info.func as Function).name
但是TypeScript抱怨
type '(...args: any[]) => any' cannot be converted to type 'Function'
我真的不知道你在尝试什么
你想要这样的东西吗?interface IAsyncInfo {
name: string;
args: any[];
func(...args: any[]): any;
}
var info: IAsyncInfo;
var test = info.func.name;
相关文章:
- 从嵌套函数访问函数属性
- Javascript嵌套函数属性继承
- Javascript-在全局作用域中调用本地函数/属性
- 正在重置原型对象的构造函数属性
- javascript函数属性设置器中的延迟
- jQuery插件返回this.each并为每个对象添加函数属性
- 从函数属性访问对象属性;不适用于Firefox
- 当使用“”创建时保留函数属性;绑定”;
- 在多个(html)元素上循环执行相同的JavaScript函数属性更改
- 如何将新的构造函数属性推送到数组
- 通过构造函数属性和运算符实例设置继承
- 角度表达式无法使用构造函数属性分辨变量类型
- 为什么要在函数定义之外引用静态变量(函数属性)
- Javascript“构造函数”属性中的错误 - IE 8
- 为什么浏览器支持对象的隐式函数属性
- 构造函数属性值应该是什么 .a 原型构造函数或对象构造函数本身
- 使用模块模式调用函数属性
- React 组件流类型检查中的可选函数属性失败
- 是否可以在 javascript 中的对象文字上定义函数属性
- JavaScript:如何捕获对象的任何缺失函数/属性