当前位置: 首页 > news >正文

做防腐木网站推广策划

做防腐木网站,推广策划,书签,海南 网站 建设作为 Dart 开发人员&#xff0c;我们对异步编程和 Futures 的强大功能并不陌生。过去&#xff0c;当我们需要同时等待多个 future 时&#xff0c;我们依赖 Future.wait([]) 方法&#xff0c;该方法返回一个 List<T>。然而&#xff0c;这种方法有一个显着的缺点&#xff1…

作为 Dart 开发人员,我们对异步编程和 Futures 的强大功能并不陌生。过去,当我们需要同时等待多个 future 时,我们依赖 Future.wait([]) 方法,该方法返回一个 List<T>。然而,这种方法有一个显着的缺点:我们必须手动将结果转换为所需的类型,这可能会导致代码冗长且容易出错。

final results = await Future.wait([Future.value("andrew"),Future.value(1984),
]);
expect((results[0] as String).toUpperCase(), "ANDREW");
expect((results[1] as int).isNegative, false);

幸运的是,有一个更优雅的解决方案,它利用了扩展和 async/await 语法的强大功能: zipWith 扩展方法。

介绍 zipWith

zipWith 扩展方法允许您将两个 future 的结果组合成一个类型化元组,从而无需手动转换。它的工作原理如下:

final (name, year) = await Future.value("andrew").zipWith(Future.value(1984));
expect(name.toUpperCase(), "ANDREW");
expect(year.isNegative, false);

在此示例中,我们将合并两个 future 的结果:一个解析为字符串 “andrew”,另一个解析为整数 1984。该 zipWith 方法返回一个元组, (T, T2) 其中 T 是第一个未来的类型, T2 是第二个未来的类型。

但是等等,还有更多!您甚至可以链接多个 zipWith 调用来组合三个或更多 future 的结果:

final ((name, year), married) = await Future.value("andrew").zipWith(Future.value(1984)).zipWith(Future.value(false));
// ...
expect(married, false);

在此示例中,我们将三个 futures 组合在一起,从而生成一个嵌套元组 ((T, T2), T3)

引擎盖下

那么,zipWith 是如何施展魔法的呢?下面是实现方法:

extension FutureZipX<T> on Future<T> {Future<(T, T2)> zipWith<T2>(Future<T2> future2) async {late T result1;late T2 result2;await Future.wait([then((it) => result1 = it),future2.then((it) => result2 = it)]);return (result1, result2);}
}

结束语

通过利用 zipWith 的强大功能,您可以在处理多个异步操作时编写更简洁、更具表现力的代码。无需再手动转换或摆弄 List<dynamic> - 只需简洁、类型安全的元组,使您的代码更易于阅读和维护。

因此,下次当您发现自己要兼顾多个 future 时,请尝试一下 zipWith,体验 Dart 中简化异步编程的乐趣。

http://www.wangmingla.cn/news/62444.html

相关文章:

  • 免费注册网站有哪些网站推广属于哪些
  • 政府网站开发报价今日头条号官网
  • 标志设计欣赏网站市场调研报告范文模板word
  • 帝国cms灵动标签做网站地图上海培训机构有哪些
  • 员工入职 在哪个网站做招工广州今日新闻最新消息
  • 丰台高端网站建设一站式网络营销
  • 邢台专业做移动网站四川省最新疫情情况
  • 做外快的网站蚁坊软件舆情监测系统
  • 做网站和做推广的区别怎么查搜索关键词排名
  • 沈阳市住房和城乡建设局网站在哪里可以做百度推广
  • wordpress登陆链接seo排名优化技术
  • ftp网站备份seo推广方案怎么做
  • phpwind与wordpress广州seo好找工作吗
  • 河南郑州网站关键词排名助手优书网首页
  • 做a动态网站企业邮箱哪个好
  • 网站权重多少4深圳seo关键词优化
  • wordpress建站落后吗收录优美图片崩了
  • 有了域名怎么制作网站在百度上打广告找谁推广产品
  • 网站建设销售发展前景seo去哪学
  • 珠宝网站开发的背景推广一个产品有哪些方式
  • 网站加入谷歌地图导航会计培训班多少钱
  • 外贸网站推广工作东莞网站优化关键词排名
  • 云南网站备案查询百度提交入口网址是什么
  • 做网站如何收费佛山seo培训机构
  • 合肥优化网站百度上怎么免费开店
  • dnf交易网站建设seo服务公司上海
  • 做网站排名优化是怎么回事农产品品牌推广方案
  • 网络ip查询网站廊坊seo网络推广
  • iis7 添加php网站推广手段
  • 淄博哪家公司做网站最好设计网页