假设我已经声明了一个包含定义特定类型函数的类型
type Callback = (err: Error | null, result: any)
type UselessFunction = (event: string, context: any, callback: Callback) => void
我想声明必须符合类型UselessFunction
的函数
我仅在文档中找到了如何使用箭头语法为函数分配类型
const someFunction: UselessFunction = (evt, ctx, cb) => {}
如何将类型分配为函数声明?我在文档中找不到语法
function someFunction (event, context, cb) {
}
答案 0 :(得分:3)
TypeScript缺少此功能。您需要将类型注释添加到声明的参数中并分别返回值,以使该函数具有特定的类型。但是,您可以使用Parameters
和ReturnType
类型使它更加方便。
type UselessFunction = (event: string, context: any, callback: Callback) => void
function someFunction (...params: Parameters<UselessFunction>): ReturnType<UselessFunction> {
// ...
}