body_might_complete_normally_catch_error
この 'onError' ハンドラーは、'{0}' に代入可能な値を返す必要がありますが、値を返さずに終了しています。
説明
#この診断は、Future.catchError メソッドの onError パラメータに渡されたクロージャが、(Future の型引数のために) 非null 値を返すことが要求されているにもかかわらず、暗黙的にnull を返すことができる場合に、アナライザーによって生成されます。
例
#以下のコードは、catchError メソッドに渡されたクロージャがint を返すことが要求されているにもかかわらず、明示的なreturn で終了せず、暗黙的にnull を返すことになるため、この診断を生成します。
dart
void g(Future<int> f) {
f.catchError((e, st) {});
}一般的な修正
#クロージャが、場合によっては非null 値を返す必要がある場合は、クロージャに明示的な return を追加してください。
dart
void g(Future<int> f) {
f.catchError((e, st) {
return -1;
});
}クロージャが常にnull を返す必要がある場合は、Future の型引数をvoid または Null に変更してください。
dart
void g(Future<void> f) {
f.catchError((e, st) {});
}