【发布时间】:2019-02-08 12:23:55
【问题描述】:
我将图像存储在 Firestore 文档中,并希望使用 FutureBuilder 加载它们。这是我到目前为止所做的:
Future getCarouselWidget() async {
var firestore = Firestore.instance;
QuerySnapshot qn = await firestore.collection("carousel").getDocuments();
return qn.documents;
}
Widget build(BuildContext context) {
return Container(
child: FutureBuilder(
future: getCarouselWidget(),
builder: (context, AsyncSnapshot snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
return new CircularProgressIndicator();
} else {
if (snapshot.hasError) {
return new Text("fetch error");
} else {
return new Container(
height: 250.0,
child: new Carousel(
boxFit: BoxFit.cover,
images: [NetworkImage(snapshot.data[0].data["img_2"])],
autoplay: false,
dotSize: 4.0,
indicatorBgPadding: 4.0,
animationCurve: Curves.fastOutSlowIn,
animationDuration: Duration(milliseconds: 1000),
));
}
}
}),
);
}'
使用上面的代码,我可以毫无错误地显示图像。但是,我不知道如何遍历快照数据以显示图像列表。
下面是我的firestore结构:
【问题讨论】:
-
我需要这个太有趣了...
-
遇到和你一样的问题。因此,请在解决方案可用时更新此内容。
-
@stucked_overflow,请查看我更新的问题。我让它显示一张图像。我只需要有关显示图像列表的帮助。
-
这是真正的交易...如果您在其中使用 FutureBuilder 进行迭代,那么它将显示您之前的错误 -> 将 Future
转换为 ImageProvider -
正确。这就是我卡住的地方。
标签: dart flutter flutter-layout