【发布时间】:2018-05-15 03:02:06
【问题描述】:
当需要两个不同的端点来渲染某些东西时,什么被认为是最佳实践?现在我正在嵌套 FutureBuilders,但这似乎并不理想。
例子:
@override
Widget build(BuildContext context) {
return new FutureBuilder(
future: Firestore.instance.collection('games').document(this.documentId).get(),
builder: (BuildContext gamesContext, AsyncSnapshot gamesSnapshot) {
return new FutureBuilder(
future: Firestore.instance.collection('profiles').document(gamesSnapshot.data['authorId']).get(),
builder: (BuildContext profilesContext, AsyncSnapshot profilesSnapshot) {
// Code goes here.
}
),
}
),
}
一定有更清洁的方法,对吧?
【问题讨论】:
-
您可以使用
FutureBuilder和Future.wait()来等待多个期货完成。 -
如果您想了解更多信息,请添加演示您尝试过的内容和尝试完成的内容的代码。
-
@GünterZöchbauer 添加了示例。