Dart中的Future的用法

Future 的常用函数

Future.then()

任务执行完成会进入这里,能够获得返回的执行结果。

Future.catchError()

有任务执行失败,可以在这里捕获异常。

Future.whenComplete()

当任务停止时,最后会执行这里。

Future.wait()

可以等待多个异步任务执行完成后,再调用 then()。

只有有一个执行失败,就会进入 catchError()。

Future.delayed()

延迟执行一个延时任务。

Future.wait([
  // 2秒后返回结果
  Future.delayed(new Duration(seconds: 2), () {
    return "hello";
  }),
  // 4秒后返回结果
  Future.delayed(new Duration(seconds: 4), () {
    return " world";
  })
]).then((results) {
  //执行成功会走到这里
  print(results[0]+results[1]);
}).catchError((e){
  //执行失败会走到这里
  print(e);
}).whenComplete((){
  //无论成功或失败都会走到这里
});;复制代码
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Dart类库有非常多的返回Future或者Stream对象的函数。 这些函数被称为异步函数:它们只会在设置好一些耗...
    seventhboy阅读 4,910评论 0 2
  • 异步支持 Dart类库有非常多的返回Future或者Stream对象的函数。 这些函数被称为异步函数:它们只会在设...
    三也视界阅读 3,008评论 1 1
  • Dart的设计目标应该是既对标Java,也对标JavaScript,Dart在静态语法方面和Java非常相似,如类...
    寒桥阅读 11,859评论 3 11
  • 前言 我们所熟悉的前端开发框架大都是事件驱动的。事件驱动意味着你的程序中必然存在事件循环和事件队列。事件循环会不停...
    HowHardCanItBe阅读 15,305评论 6 29
  • 标签(空格分隔): Dart Flutter Dart在静态语法方面和Java非常相似,如类型定义、函数声明、泛型...
    黄昭鸿阅读 3,146评论 0 0