繁体   English   中英

Flutter 具有未来的firestore streambuilder

[英]Flutter firestore streambuilder with a future

我有一个简单的问题。 对我的 firestore 集合的引用是动态的。 在这段代码中,getDocumentReference() 在检查用户的 email 后给了我对文档的引用。 我使用此文档参考来获取我的快照。

Future<Stream<QuerySnapshot>> getHabits() async {
    DocumentReference document = await getDocumentReference();
    var snapshots =  document.collection('habits').snapshots();
    return snapshots;
}

如您所见,我想将此Future<Stream<QuerySnapshot>>用于流构建器。 我怎样才能做到这一点? 我尝试过这样的事情。 但它没有将未来作为 stream 的输入

return StreamBuilder(
   stream: getHabits(),
);

您可以将其包装在FutureBuilder中:

return FutureBuilder<Stream<QuerySnapshot>>(
   future: getHabits(),
   builder: (context, snapshot) {
      if (snapshot.hasData) {
          return StreamBuilder(stream: snapshot.data); // Success
      } else if (snapshot.hasError) {
          return Text('${snapshot.error}'); // Error
      } else {
          return CircularProgressIndicator(); // Loading
      }
   },

);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM