Future
Dart
的异步对象,类似于Javascript
中的Promise
。
Future
表示一个异步操作返回的结果;Future
是一个泛型类;Future
实现异步的原因是通过dart
的event loop
,这里不过多赘述。
基本使用
import 'package:http/http.dart' as http;
Future getIp() {
final url = 'https://httpbin.org/ip';
return http.get(url).then((res) {
return res.body;
});
}
void main() {
getIp().then((res) {
print(res);
}).catchError((err) {
print(err);
});
}
方法
1. then
通过
.then
的形式,获取Future
对象执行成功后的结果。
- 第一个参数
onValue