如何在打字稿中的接口中指定回调,而不必为其命名类型

时间:2019-06-10 14:38:52

标签: typescript

我希望有一个带有函数委托的接口,但不想为其声明类型。

这可行,但是我想避免使用CallbackType类型。

export type CallbackType =
  (length: number) => void;

export interface MyInterface {
    myCallback:  CallbackType; // This works alright.
}

但是我更希望的是不要将名称空间挤满一个类型。

export interface MyInterface {
    myCallback: (length: number): void; // Does not work
}

(可以说服我,拥有一个命名类型是一个好主意,放弃我的使命去寻找另一种方法。但这不是问题。)

2 个答案:

答案 0 :(得分:2)

尝试一下:

export interface MyInterface {
    myCallback: (length: number) => void;
}

答案 1 :(得分:1)

您可以对方法使用其他语法:

export interface MyInterface {
    myCallback(length: number): void;
}

这实际上是myCallback: (length: number) => void;的简写