illegal_async_return_type
Functions marked 'async' must have a return type which is a supertype of 'Future'.
Description
#The analyzer produces this diagnostic when the body of a function has the
async
modifier even though the return type of the function isn't
assignable to Future
.
Example
#The following code produces this diagnostic because the body of the
function f
has the async
modifier even though the return type isn't
assignable to Future
:
dart
int f() async {
return 0;
}
Common fixes
#If the function should be asynchronous, then change the return type to be
assignable to Future
:
dart
Future<int> f() async {
return 0;
}
If the function should be synchronous, then remove the async
modifier:
dart
int f() => 0;
除非另有说明,文档之所提及适用于 Dart 3.7.3 版本,本页面最后更新时间: 2025-05-08。 查看文档源码 或者 报告页面问题。