Итак, я пытаюсь отправить список объектов, созданных построителем потока, в этот метод с именем submitOrder, но, похоже, это неправильный подход, если кто-нибудь может мне помочь, я был бы так благодарен.
StreamBuilder(
stream: DatabaseService().cartCollection.snapshots(),
builder: ( context, snapshot){
if (!snapshot.hasData){
return Loading();
}
else{
List<CartItem> products =[];
double total =0;
CartItem temp= CartItem(customerId:'' ,itemId:'' ,id: '', title: '', quantity:0, price: 0);
for (int i=0; i<snapshot.data.documents.length; i++){
DocumentSnapshot snap = snapshot.data.documents[i];
if ((snap.data['customerId']== user.uid && snap.data['status']== 'open') ){
temp = CartItem(
customerId: user.uid,
itemId: snap.data['itemId'].toString(),
id: snap.documentID.toString(),
title: snap.data['itemName'].toString(),
quantity: int.tryParse(snap.data['quantity'].toString()) ,
price: double.tryParse( snap.data['price'].toString())
);
total += temp.quantity*temp.price;
products.add(temp);
}
}
submitOrder(products,total);
return Text('Order Sucsessfuly!');
}
}
);