【发布时间】:2022-09-25 02:24:17
【问题描述】:
我有一个使用 Firestore 获取数据的应用程序,并且我创建了一个自定义异常类型“NoFirestoreDataException”,当我在我期望的情况下没有获取任何数据时可以抛出该异常类型。
异常类型有一个参数,dataType,,它从我在 Firestore 中使用的所有数据类型的枚举中获取一个值,返回消息基本上只是说在这个查询中没有找到dataType 的数据。
我有一些地方专门捕捉到这种类型的错误,但我想缩小它,这样如果数据类型与我实际期望的匹配,我就可以捕捉它。
如果我正在搜索 User 并得到 NoFirestoreDataException(FirestoreDataType.Goal) 回复,我不想优雅地处理该错误,因为这将是非常出乎意料的。
有没有办法使用单个自定义异常类型来做到这一点?
-
catch仅对对象的类型起作用。如果您需要更多粒度,您的异常处理程序将需要检查捕获对象的属性,如果您不想处理它,则需要检查rethrow它。
标签: dart error-handling