Pular para o conteúdo principal

async_return_with_no_await

Detalhes sobre o diagnóstico 'async_return_with_no_await' produzido pelo analisador do Dart.

Returning a 'Future' without 'await'.

Descrição

#

O analisador emite este diagnóstico quando um Future é retornado de uma função async sem usar await.

Retornar um Future sem await de uma função async significa que qualquer exceção lançada pelo Future pode não se propagar como esperado. Ter a exceção lançada no ponto do await ajuda a identificar a origem da exceção e facilita a depuração.

Exemplo

#

O código a seguir produz este diagnóstico porque retorna o Future de futureString sem usar await:

dart
Future<String> futureString(Future<String> value) async {
  return value;
}

Correções comuns

#

Adicione await antes do Future retornado:

dart
Future<String> futureString(Future<String> value) async {
  return await value;
}

Se você não precisar usar await, remova async do corpo da função:

dart
Future<String> futureString(Future<String> value) {
  return value;
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.