如何在flutter中对listview.builder建立列表视图?

问题描述 投票:1回答:1
buildComments() {

return StreamBuilder(

    stream: commentRef
        .document(postId)
        .collection('comments')
        .orderBy('timestamp', descending: false)
        .snapshots(),

    builder: (context, snapshot) {
      if (!snapshot.hasData) {
        return circularProgress();
      }

      List<Comment> comments = [];
      snapshot.data.documents.forEach((doc) {
        print(comments);
        comments.add(Comment.fromDocument(doc));
      });

      return ListView(
        children: comments,
      );
    });
}

我正在尝试在列表view.builder中将其转换,但是它给我错误,您不能使用列表而不是小部件,任何人都可以解决此问题。

firebase flutter dart google-cloud-firestore flutter-layout
1个回答
1
投票
您应该执行以下操作:

if (snapshot.connectionState == ConnectionState.done) { return ListView.builder( shrinkWrap: true, itemCount: snapshot.data.documents.length, itemBuilder: (BuildContext context, int index) { return ListTile( contentPadding: EdgeInsets.all(8.0), title: Text(snapshot.data.documents[index].data["name"]), ); });

假设文档中有name
© www.soinside.com 2019 - 2024. All rights reserved.