Flutter 函数的返回类型为';未来者<;用户>';,但是';t以return语句结束
我正在尝试为FirebaseAuth的用例创建一个存储库,并且可以看到警告! 我是否应该忽略警告,因为它不会影响应用程序?Flutter 函数的返回类型为';未来者<;用户>';,但是';t以return语句结束,flutter,dart,firebase-authentication,Flutter,Dart,Firebase Authentication,我正在尝试为FirebaseAuth的用例创建一个存储库,并且可以看到警告! 我是否应该忽略警告,因为它不会影响应用程序? 或者我应该现在处理它,以及如何处理?Dart分析了您的程序,发现您并没有处理所有情况—方法如何退出。这是一个潜在的问题,因为您的方法签名指定您的方法将返回一个Future对象 在您的情况下,您没有处理从createUserWithEmailAndPassword方法抛出异常的情况。如果捕获到异常,则最终得到的执行路径没有任何return语句 在这种情况下,Dart在运行时只
或者我应该现在处理它,以及如何处理?Dart分析了您的程序,发现您并没有处理所有情况—方法如何退出。这是一个潜在的问题,因为您的方法签名指定您的方法将返回一个
Future
对象
在您的情况下,您没有处理从createUserWithEmailAndPassword方法抛出异常的情况。如果捕获到异常,则最终得到的执行路径没有任何return
语句
在这种情况下,Dart在运行时只返回null
,因此它不是一个错误。但这是代码错误的潜在迹象,因为您不太可能因为没有任何return
语句而忘记了异常的处理
如果您打算在异常情况下只返回null
,那么您应该有insertreturn null在两个catch
块中(或在catch块外的方法底部)都有code>
或者,如果您只想添加一些日志记录,但仍然让调用方也处理异常,则可以重新显示该异常。您可以在语言教程中了解更多信息:
在这两种情况下,您都应该在方法的文档中描述行为。您的问题是,如果发生异常,您只是打印错误,结果什么也不返回。您应该重新显示异常(或新异常)或在异常处理中返回null,并在API中指出此方法可以返回null。在catch块中返回某些内容