首页 > 解决方案 > Flutter:如何获取一个 Firestore 文档中的字段长度?

问题描述

我想在一个文档中获得总共的字段!但我没有找到增加长度的选项。我只从 firebase 获得一份文件,而不是一份文件列表。希望你能理解我的问题

final Stream<DocumentSnapshot<Map<String, dynamic>>> _Shop =
    FirebaseFirestore.instance
        .collection('shop')
        .doc('banana')
        .snapshots();



StreamBuilder<DocumentSnapshot>(
            stream: _ShopStream,
            builder: (BuildContext context,
                AsyncSnapshot<DocumentSnapshot> snapshot) {

              if (snapshot.connectionState == ConnectionState.waiting) {
                return Center(
                  child: CircularProgressIndicator(),
                );
              }
              if (!snapshot.data.exists) {
                return Center(
                  child: Text(
                    'Not Available !'.tr,
                    style: TextStyle(
                        fontSize: 20,
                        fontWeight: FontWeight.bold,
                        color: Colors.black),
                  ),
                );
              }
              DocumentSnapshot<Object> data = snapshot.data;

              return ListView.builder(
                itemCount: data.lenth,
                itemBuilder: (context, int index) {
                  return ListTile(
                    title: Text(data['banana']['name'].toString()),
                  );
                },
              );
            })

标签: firebaseflutterdartgoogle-cloud-firestore

解决方案


(data.data() as Map<String, dynamic>).keys.toList().length

推荐阅读