从函数返回类

时间:2018-09-11 23:36:54

标签: dart

有人可以解释为什么这行不通吗?

class Foo {
  Foo(this.foo);
  sayFoo() {
    print(foo);
  }
}

var test = () => Foo;
test()("blah").sayFoo(); // ERROR

2 个答案:

答案 0 :(得分:3)

Dart当前不支持构造函数剥离,但计划最终将其添加到该语言中。

test()返回一个Type<Foo>,但这不允许您调用构造函数。

您可以做的是模拟脱落,创建封口

var test = (String foo) => Foo(foo);
test("blah").sayFoo(); // should work now

答案 1 :(得分:-2)

这行不通,因为它不是按照这种方式工作的。