Dart: asynchronous code

3 阅读1分钟

前沿

cli工程中实现搜索文章并返回文章内容,收获异步方法、http类库

任务

添加http 依赖

1、open dartpedia/cli/pubspec.yaml文件
2、定位到dependencies 部分
3、添加http: ^1.3.0
4、保存pubspec.yaml
5、Run 'dart pub get' 获取依赖类库,看到下面相关输出:

Screenshot 2026-04-19 at 20.23.50.png

导入包

1、打开dartpedia/bin/cli.dart
2、添加import 'package:http/http.dart' as http;

  • as http:给http包起了别名,方便后面调用,也能避免其他包中相同名字时冲突
  • package:系统类库不需要加package关键字,三方库的需要
  • dart: 系统自带
  • package: 第三方插件
  • ./ ../: 自己项目文件
  • as: 起别名
  • show / hide: 控制导入内容

实现异步获取文章函数

1、定义getWikipediaArticle异步函数,函数返回值类型Future表示是将来某个时间返回值,async表明函数是异步

Screenshot 2026-04-19 at 20.37.50.png 2、searchWikipedia中调用getWikipediaArticle,注意await关键字,search函数需要增加async关键字

Screenshot 2026-04-19 at 20.40.54.png

运行工程

1、终端执行
dart bin/cli.dart search fluttter
2、查看终端输出信息

Screenshot 2026-04-19 at 20.46.05.png

总结

  • future、async、await关键字
  • 添加package 依赖
  • http获取网络请求