如何 return 在 dart 中向用户发送异常消息?

How to return a exception message to the user in dart?

是否可以 return 将异常消息返回给用户?如果是,我该如何实现?我想让用户知道异常消息 returned 每当发生时。另外,我不希望我的应用程序在发生异常时崩溃。

更具体地说,我想 return 在用户尝试登录时将错误消息返回给用户。我使用 Firebase 作为我的身份验证提供程序。

为了更好地理解,我在下面包含了我的代码。

提前谢谢你。

 Future<User?> signInWithEmailAndPassword(
    String email,
    String password,
  ) async {
    try {
      final credential = await _firebaseAuth.signInWithEmailAndPassword(
          email: email, password: password);
      return _userFromFirebase(credential.user);

      throw Exception('Some Error occured. ');
    } on auth.FirebaseAuthException catch (e, _) {
      print(e);

    } catch (e) {
      print(e);
    }
  }

您可以使用 ScaffoldMessenger 向用户显示错误消息

   Future<User?> signInWithEmailAndPassword(
    BuildContext context,
    String email,
    String password,
  ) async {
    try {
      final credential = await _firebaseAuth.signInWithEmailAndPassword(
          email: email, password: password);
      return _userFromFirebase(credential.user);
      
      throw Exception('Some Error occured. ');
      
    } on auth.FirebaseAuthException catch (e, _) {
    ScaffoldMessenger.of(context).showSnackBar(SnackBar(
      content: Text(e.toString()),
    ));
    } catch (e) {
    ScaffoldMessenger.of(context).showSnackBar(SnackBar(
      content: Text(e.toString()),
    ));
    }
  }