flutter - 在 setState 中使用异步操作的解决方法
问题描述
我有一个异步操作,其结果应该重建一个小部件。
医生setState()
说
提供的回调会立即同步调用。它不能返回未来(回调不能是异步的),因为这样就不清楚何时实际设置了状态
所以我有一个简单的解决方法可以满足我的目的,但我不确定这是否是正确的方法。
// awaiting for an async operation
distanceFromCenter = await Geolocator().distanceBetween(
selectedLocation.latitude,
selectedLocation.longitude,
ReferencePoint.latitude,
ReferencePoint.longitude);
setState(() {
// A colleague might not know why we're calling the setState() here
});
欢迎任何建议。
解决方案
推荐阅读
- javascript - 始终在特定类型的所有其他 HeaderItems 之后呈现某些 Wicket HeaderItem
- ruby - Rails API 类方法加载的奇怪行为
- c# - 使用 Python 在编译的 exe 中调用 C# 函数
- mysql - 如何使用插入语句和 table-schema.sql 文件将 mydumper 的 table.sql 文件转换为 CSV
- android - 使用 Tensorflow Lite 在 Android 上进行对象检测
- mongodb - 我想使用聚合 $lookup 函数关联两个不同的 mongodb 和 mongoose 集合
- python - 在 numpy prod 中使用扩展精度
- wordpress - 如果购买了特定产品,则必须将表单上的复选框设置为选中
- angular - AWS ASP.NET Core 2.1 和带角度的 CORS
- r - dplyr 无法在 mutate 函数中设置 ALTREP truelength