📅  最后修改于: 2023-12-03 15:30:22.019000             🧑  作者: Mango
Dart 中的 then 方法是 Future 类的一个扩展方法,能够在 Future 对象完成后执行一些操作。本文将介绍 Dart then 方法的使用。
Future<T> then<T>(FutureOr<T>? onValue(T value), {Function? onError})
then 方法接受两个可选参数:
onValue
:当 Future 对象完成时要执行的函数。onError
:当 Future 对象失败时要执行的函数。如果没有提供该参数,则抛出任何错误。一个返回 Future 对象的方法,可以在 onValue
或 onError
函数完成后传递它。
让我们来看一个例子:
void main() {
var future = new Future(() => print('Hello'));
future.then((value) => print('onValue executed'), onError: (error) => print('onError executed'));
}
上述代码中,我们创建了一个 Future 对象,并使用 then 方法为其设置了两个回调函数。在这个例子中,我们使用了 Lambda 表达式作为回调函数,但是您还可以使用命名函数。
当 Future 对象完成时,将执行 onValue
函数,它会输出 "onValue executed"。相反,当 Future 对象失败时,将执行 onError
函数,它会输出 "onError executed"。
以上就是 Dart then 方法的介绍。使用 then 方法可以方便地对 Future 对象执行回调函数,并在完成或失败时获取相应的结果。