【问题标题】:Function Overloading in TypeScriptTypeScript 中的函数重载
【发布时间】:2017-07-26 09:26:45
【问题描述】:

TypeScript 不支持函数重载吗?

我有这两个功能:

checkCredits() {
   // my code
}

checkCredits(header: any) {
    // my code
}

我这样调用第二个函数:

this.checkCredits(this.myObject); 

在 vs 代码中编译时出现以下错误: 提供的参数与调用目标的任何签名都不匹配。 重复的函数实现。

【问题讨论】:

标签: typescript


【解决方案1】:

打字稿中的重载是通过使用可选参数来完成的。

checkCredits(header?: any) {
    // my code
}

现在你可以打电话了:

this.checkCredits(this.myObject); 

this.checkCredits(); 

缺点你在同一个函数中有逻辑。你可以检查issue

【讨论】:

  • 谢谢!我没有意识到这一点。
  • @Rich 你也可以做到this 方式。但在您的示例中似乎没有必要
猜你喜欢
  • 2012-10-24
  • 1970-01-01
  • 2012-09-24
  • 2020-06-08
  • 1970-01-01
  • 2016-10-27
相关资源
最近更新 更多