是否有可能避免在Dart中默认调用超级构造器?

时间:2013-12-13 01:20:29

标签: constructor dart

例如:

class ButtonComponent extends Component {
  ButtonComponent(template, element) : super(template, element);
}

工作正常。但是,当我这样做时:

class ButtonComponent extends Component {
  ButtonComponent(template, element) => new SomeOtherClass();
}

它抱怨使用错误的属性数调用超级构造函数。任何解决方法吗?

通常,正如您所看到的,我只需要在实际使用ButtonComponent的构造函数时返回其他一些不相关的类的实例。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:4)

你曾经使用factory constructor来做到这一点。

class ButtonComponent extends Component {
  factory ButtonComponent(template, element) => new SomeOtherClass();
}