在 TypeScript 中用括号代替键的对象是什么意思?

问题描述

TypeScript 中用括号代替键的对象是什么意思?

例如这里

foo(success: { (): void; (): void; }) {}

我不明白 success 参数代表什么。

解决方法

{ (): void; (): void; } 只是一个 callable type。第二个 (): voidfunction overload。虽然在这种情况下它什么都不做。用不那么神奇的方式可以写成:

interface Success {
  (): void
  (): void
}

function foo(success: Success) {}

这基本上相当于 foo(success: () => void) {}

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...