使用Firebase Firestore时,有关异常处理的文档非常少。我将假设没有这样的东西可以处理特定的错误。
我当前正在使用最新的依赖项:
在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