将Firebase集合获取到Flutter列表以显示

时间:2019-03-07 12:42:49

标签: flutter google-cloud-firestore

我努力将Firebase集合中的数据获取到Sliverlist中。 我发现的每个示例(例如this)仅返回一个Sliverlist,但我有多个。

我要实现的目标是一个清单列表,其中一些具有动态数据而其他则没有

这是我的代码中发生这种情况的部分:

    return Scaffold(
      body: CustomScrollView(
        slivers: <Widget>[
          SliverAppBar(
            // omitted
            floating: false,
            pinned: true,
            flexibleSpace: FlexibleSpaceBar(
              centerTitle: false,
              collapseMode: CollapseMode.parallax,
              // omitted
              ),
            ),
          ),
          SliverPadding(padding: EdgeInsets.all(10.0)),
          StreamBuilder(
            stream: Firestore.instance.collection("books").snapshots(),
            builder: (BuildContext context, AsyncSnapshot snapshot) {
              return SliverList(
                delegate: SliverChildBuilderDelegate(
                  (BuildContext context, int index) {
                    DocumentSnapshot ds = snapshot.data.documents[index];
                    return Row(
                      textDirection: TextDirection.ltr,
                      children: <Widget>[
                        Expanded(child: Text(ds["title"])),
                        Expanded(child: Text(ds["author"])),
                      ],
                    );
                  },
                  childCount: snapshot.data.documents.length,
                ),
              );
            },
          ),
          SliverPadding(padding: EdgeInsets.all(10.0)),
          SliverList(
            delegate: SliverChildListDelegate(
              [
                StaticWidget(),
                StaticWidget(),
              ],
            ),
          ),
          SliverPadding(padding: EdgeInsets.all(25.0)),
        ],
      ),
      // omitted

我收到以下错误: enter image description here

非常欢迎任何帮助!

0 个答案:

没有答案