繁体   English   中英

Typescript - 带接口的类的默认参数

[英]Typescript - Default parameters on class with interface

我有一个场景,我有一个接口,有一个像这样的方法:

interface SomeInterface
{
   SomeMethod(arg1: string, arg2: string, arg3: boolean);
}

像这样的一个类:

class SomeImplementation implements SomeInterface
{
   public SomeMethod(arg1: string, arg2: string, arg3: boolean = true){...}
}

现在问题是我似乎无法告诉接口第3个选项应该是可选的还是有一个默认值,就像我试图告诉接口有一个默认值我得到错误:

TS2174: Default arguments are not allowed in an overload parameter.

如果我从界面中省略默认值并像这样调用它:

var myObject = new SomeImplementation();
myObject.SomeMethod("foo", "bar");

它抱怨参数与任何覆盖都不匹配。 那么是否有一种方法可以为参数提供默认值并从接口继承,我不介意接口是否必须将值作为默认值,因为它始终是一个可选参数。

您可以将参数定义为可选的?

interface SomeInterface {
     SomeMethod(arg1: string, arg2: string, arg3?: boolean);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM