在颤振列表中使用未来对象的数据
Posted
技术标签:
【中文标题】在颤振列表中使用未来对象的数据【英文标题】:Using a future object's data in a flutter list 【发布时间】:2020-06-05 08:44:13 【问题描述】: @override
void initState()
super.initState();
futureInfo = fetchInfo();
Future<Info> futureInfo;
List<String> prices = [];
List<String> duration = ["11 hours", "14 hours", "15 hours","12 hours", "10 hours", "8 hours",];
List<String> airline = ["Middle East Airline", "Air Canada Airline", "Turkish Airline","Middle east Airline", "Turkish Airline", "Air Canada Airline",];
List<String> destination = ['Beirut','Madrid'];
你好 我对颤动还是很陌生,我只是想知道如何在价格列表中使用未来对象 futureInfo 中的数据,其中 futureInfo 是一个解析的 Json 文件到我拥有的类中,我希望能够访问它的属性. 您还可以向我推荐任何可能帮助我了解更多技术部分的 Flutter/dart 的文档或视频,而不是更多的 UI 内容。(例如:函数、状态、变量......)
【问题讨论】:
【参考方案1】:我建议你放置 info 对象
信息信息;
而不是
未来futureInfo;
,然后像这样使您的 fetchInfo() 方法异步,
fetchInfo()async
//inside async method you can wait for any future to complete using await keywork
await operation1;
await operation2;
//then setState your Info object
setState(()
this.info = newValue;
);
为了更清楚,请发布完整代码会更容易。
【讨论】:
我添加了可能有帮助的代码。我想从作为列表的信息中获取数据,并将其作为列表单独使用以显示在卡片中。有什么建议?我目前正在使用从列表return Info.fromJson(json.decode(response.body));
只是setState(() this.info = Info.fromJson(json.decode(response.body)); );
@RamiHoteit 当你说“我目前正在使用从列表中获取信息的卡片为了了解未来,你应该通过这个:https://dart.dev/codelabs/async-await
如果你是新手,那么我建议你通过这个进行 Http 调用:https://flutter.dev/docs/cookbook/networking/fetch-data
否则,我会要求您关注 Bloc 库,以获得处理状态变化的深入知识。 Bloc 库在这里:https://bloclibrary.dev/
【讨论】:
在一个完全不涉及状态管理的期货问题中推荐 BLoC 是非常离题的。不要让与他们的问题无关的信息使新开发人员过载。 好的,那么您的帮助材料可在第 2 个链接中找到。未来、异步、等待和 https 响应。以上是关于在颤振列表中使用未来对象的数据的主要内容,如果未能解决你的问题,请参考以下文章
在颤振中显示仅产品名称的列表,使用json格式的woocommerce api数据