【问题标题】:Do not understand overloading in Typescript不懂 Typescript 中的重载
【发布时间】:2016-02-18 07:49:53
【问题描述】:

我有以下:

class Test {
  setContent(data:number, startWith, nameFn, selectedParentID);
  setContent(data:number) {
    return 22;
  }
}

var t = new Test();
t.setContent(22);

在 t.setContent VS 代码和 VS 2013 行告诉我:“提供的参数与调用目标的任何签名都不匹配”。根据错误我只能调用带有4个参数的函数。

documentation 没有任何可变数量参数的示例,所以我不知道这里的正确语法应该是什么。

【问题讨论】:

    标签: typescript overloading


    【解决方案1】:

    实现必须为所有可能的参数提供签名,所以

    setContent(data:number): number;
    setContent(data:number, startWith?: any, nameFn?: any, selectedParentID?: any): number{
      return 22;
    }
    

    会工作

    请查看excellent handbook 的“重载”段落了解更多详情

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-20
      • 1970-01-01
      • 2017-07-26
      • 2021-11-20
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      相关资源
      最近更新 更多