当函数返回future时,是否需要用构造函数构造future



如果函数返回Future,我应该返回纯bool还是用bool构造Future?

Future<bool> loginSite() async {
...
return Future.value(false); 
// or
// return false;
}

如果函数标记为async,只需使用return false。它更容易阅读,也有同样的行为。

附带说明:甚至还有一个语言请求禁止从async函数返回futures。

如果您使用async,您可以简单地忽略Future.value并返回bool:

Future<bool> f() async { // <-- Has async
// ...
return false;
}

在没有async的情况下,使用Future.value:

Future<bool> f() { // <-- Doesn't have async
// ...
return Future.value(false);
}

最新更新