使用 Dart 的 async/await 时可以进行方法级联吗?

jba*_*xe2 6 dart

我希望这是一个简单的问题,但找不到答案。在同步 Dart 代码中,您可以进行方法级联,例如:

var obj1 = new SomeClass()
  ..method1()
  ..method2(param1, param2)
  ..method3();
Run Code Online (Sandbox Code Playgroud)

假设相反,这些方法为异步代码返回 Futures。所以现在看来​​我们必须这样做:

var obj1 = new SomeClass();

await obj1.method1();
await obj1.method2(param1, param2);
await obj1.method3();
Run Code Online (Sandbox Code Playgroud)

方法级联是否适用于整个 async/await 结构?如果是这样,如何?

Gün*_*uer 6

看起来这(还)不支持。有一个未解决的问题https://github.com/dart-lang/sdk/issues/23000