其中是Dart中onError和CatchError之间的差异



我看到的唯一区别是onError还将Stacktrace作为参数传递。在哪些情况下,你会选择另一种?

Future<T> onError<E extends Object>(FutureOr<T> Function(E, StackTrace) handleError, {bool Function(E)? test})
Future<T> catchError(Function onError, {bool Function(Object error)? test});

CCD_ 1实际上是CCD_ 2的更精确类型的版本。

因此,使用onError,您可以捕获特定的错误类型,并指定正确类型的错误处理程序函数,而不是所有类型,只指定一个具有catchError的函数。

onError中,错误将被视为未捕获异常,而catchError则不是。

最新更新