Подождите, пока блок завершится во Flutter

Future<void> loginWithEmail(
  String email,
  String password,
) async {
  await FirebaseAuth.instance.signInWithEmailAndPassword(email: email, password: password);
  final data = await request('fetch-user');
  final user = UserV1.fromJson(data);
  userBloc.add(UpdateUserAction(user));

  fetchAllLogs();
  requestPushNotifications();
  resetMuscleFreshnessOnLogin();
  await fetchUserLights([user.uid]);
  await fetchExercises();
  // Must be after fetch exercises
  generateNextWorkout();
  return;
}

В следующем коде мне нужно дождаться завершения userBloc. Но не знаю, как это сделать. Использование библиотеки FlutterBloc.

Было бы хорошо, если бы я мог сделать

await userBloc.add(UpdateUserAction(user));

person Oliver Dixon    schedule 30.07.2020    source источник


Ответы (1)


Всасывание простое.

await userBloc.first;
person Oliver Dixon    schedule 30.07.2020