我是打字稿的新手,我很喜欢它。但是现在我很难接受我在旧的js代码中返回函数的事实。所以我试着想一下如何用具体的签名定义返回类型“Function”。在这样的例子中(注意,这不编译):
function getAFunction(): Function(a: string, b: number) {
return function(a: string, b: number): void {
// some logic
}
}
这个特例还没有documentation,或者我只是监督它?
答案 0 :(得分:2)
要回答您的问题,语法如下:
var a = function(): (a: string, b: number) => void {
return (a: string, b: number) => void {
// some logic
}
}
但是由于编译器执行类型推断,因此类型注释实际上是可选的:
var a = function() {
return (a: string, b: number) => void {
// some logic
}
}