Dart-FirebaseFirestore异常处理

时间:2020-09-18 19:13:41

标签: firebase flutter dart exception

使用Firebase Firestore时,有关异常处理的文档非常少。我将假设没有这样的东西可以处理特定的错误。

我当前正在使用最新的依赖项:

  • firebase_core:^ 0.5.0
  • firebase_auth:^ 0.18.0 + 1
  • cloud_firestore:^ 0.14.0 + 2

在firebase_auth上,有据可查,并且直接介绍了如何处理异常。有一个名为FirebaseAuthException的异常类,其中有一个code字段,其中包含特定的错误代码(不幸的是作为字符串,但至少提供了某些东西),例如 invalid-email >,用户禁用弱密码等。拥有一个很好,因为我可以通知用户出了什么问题,并且程序可以根据这些错误代码进行相应的操作。

另一方面,很不幸,没有FirebaseFirestoreException这样的东西,文档对您没有多大帮助。它只显示.catchError()来处理类型为dynamic的错误变量的可能异常,因此基本上可以是任何东西。

Future<void> addUser() {
  // Call the user's CollectionReference to add a new user
  return users
      .add({
        'full_name': fullName,
        'company': company,
        'age': age
      })
      .then((value) => print("User Added"))
      .catchError((error) => print("Failed to add user: $error"));
}

所以我的问题是,是否有任何类似的东西可以处理像FirebaseAuthException这样的特殊异常情况,并带有一些错误代码和内容。此外,我如何识别这是否是FirebaseFirestore异常?为什么它不提供使开发人员感到更舒适的例外?还是我错过了重点?请让我知道。

关于扑扑的Firebase Firestore的文档:https://firebase.flutter.dev/docs/firestore/usage

0 个答案:

没有答案