StreamBuilder中的Where子句Google Cloud Firestore

时间:2018-08-23 20:21:07

标签: firebase dart flutter google-cloud-firestore

我想在streambuilder中的Cloud Firestore查询上添加where子句。我的问题是我的列表出现然后消失了... 这是我的代码。

StreamBuilder(
      stream: Firestore.instance
          .collection('nomquetuveux')
          .orderBy('valid').where('valid', isEqualTo: true).snapshots(),
      builder: (context, snapshot) {
        if (!snapshot.hasData) return const Text('Chargement ...');
        return ListView.builder(
            itemCount: snapshot.data.documents.length,
            itemBuilder: (context, index) {
              return Column(children: <Widget>[
                _buildListItem(
                    context,
                    snapshot.data.documents[index]['libelle'],
                    snapshot.data.documents[index]['valid']),
                Divider(),
              ]);
            });
      }),

1 个答案:

答案 0 :(得分:2)

我认为您可以通过执行以下操作尝试对其进行调试。

QuerySnapshot documents = await Firestore.instance
      .collection('nomquetuveux')
      .orderBy('valid').where('valid', isEqualTo: true)
      .getDocuments().catchError(
           (error) {print(error);}
      );

通过这种方式,您可以查看查询执行是否引发了错误