首页 > 解决方案 > 如何在 dart (Flutter) 中使用 Future 和 .then() 转换这个简单的 async,await 格式化代码?

问题描述

在我正在谈论的代码片段下方:

void getlocation() async {
    Position position = await Geolocator()
    .getCurrentPosition(desiredAccuracy: LocationAccuracy.low);
    print(position);
}

我需要在 Dart (Flutter) 中根据 Future 编写这个函数。

提前致谢。

标签: asynchronousflutterdartasync-await

解决方案


方法的版本future, then

未来- 它用于表示将来某个时间可用的潜在值或错误。

Geolocator().getCurrentPosition(desiredAccuracy: LocationAccuracy.best)
  .then((Position position) {
    print('Latitude : ${position.latitude}');
    print('Longitude : ${position.longitude}');
  }).catchError((err) {
    print(err);
  });

注意:如果您希望您的程序等到异步功能完成,请使用await或使用then.


推荐阅读