使用firebase后端的Flotter流式购物车总价

使用firebase后端的Flotter流式购物车总价,firebase,flutter,dart,google-cloud-firestore,Firebase,Flutter,Dart,Google Cloud Firestore,请我卡住了,我正试图流从购物车的产品价格和总结,以获得总。。。这是我的密码 Container( alignment: Alignment.bottomCenter, child: StreamBuilder( stream: firebaseFirestoreOperations.usersRef .doc(firebaseFirestoreOperations.getUserId())

请我卡住了,我正试图流从购物车的产品价格和总结,以获得总。。。这是我的密码

   Container(
        alignment: Alignment.bottomCenter,
        child: StreamBuilder(
            stream: firebaseFirestoreOperations.usersRef
                .doc(firebaseFirestoreOperations.getUserId())
                .collection('Cart')
                .doc('9oNFPyrUPN9wORFsyqvY')
                .snapshots(),
            builder: (context, snapshot) {
              var price = snapshot.data['price'];
              return CartBottomBar(
                totalPrice: price,
              );
            }),
      ),
容器(
对齐:对齐.bottomCenter,
孩子:StreamBuilder(
流:firebaseFirestoreOperations.usersRef
.doc(firebaseFirestoreOperations.getUserId())
.collection('购物车')
.snapshots(),
生成器:(BuildContext上下文,异步快照){
if(snapshot.connectionState==connectionState.done){
设total=0;
//snapshot.docs.forEach((doc)=>{
snapshot.forEach((doc)=>{
合计+=单据数据()['price'];
});
返回文本('\${total}');
}
返回文本(“加载”);
}),
),

检查此参考:

您遇到了什么错误?它打印是因为我指定了文档ID,需要它来流式处理该集合中的所有文档,并仅选择“价格”字段它打印是因为我指定了文档ID,需要它流式处理该集合中的所有文档,并仅选择“价格”字段remove.doc('9oNFPyrUPN9wORFsyqvY')然后检查更新的答案
 Container(
        alignment: Alignment.bottomCenter,
        child: StreamBuilder(
            stream: firebaseFirestoreOperations.usersRef
                .doc(firebaseFirestoreOperations.getUserId())
                .collection('Cart')
                 .snapshots(),
            builder: (BuildContext context, AsyncSnapshot<int> snapshot) {


              if (snapshot.connectionState == ConnectionState.done) {

              let total = 0;
//               snapshot.docs.forEach((doc) => {

               snapshot.forEach((doc) => {
                  total += doc.data()['price'];
               });



                return Text('\$${total}  ');
             }
             
            return Text('Loading');
        
 
             
            }),
      ),