[英]How To get The Total of values in Flutter firestore?
我有一個 Firestore Collection 'Cart' 包含一個產品列表,每個產品都有一個價格,所以我想獲取所有這些產品並計算價格總和: FireStore Collection
我嘗試了一些代碼,這個代碼正在工作,但是我如何在屏幕上顯示總和
Future getTotal() async {
int sum = 0;
FirebaseFirestore.instance.collection('Users/$userid/Cart').get().then(
(querySnapshot) {
querySnapshot.docs.forEach((result) {
for (var i = 1; i < result.data()['price'].toString().length; i++) {
sum = sum + result.data()['price'];
}
});
print('total : $sum');
},
);
}
更新:我試過這是有效的,但是當我從購物車中刪除產品時,值沒有改變除非我關閉屏幕然后再回來,
double sum = 0;
double total = 0;
final String userid = FirebaseAuth.instance.currentUser.uid;
@override
void initState() {
FirebaseFirestore.instance.collection('Users/$userid/Cart').get().then(
(querySnapshot) {
querySnapshot.docs.forEach((result) {
sum = sum + result.data()['price'];
});
setState(() {
total = sum;
});
},
);
super.initState();
}
任何幫助將不勝感激。
這對我有用:
final cartitems = snapshot.data;
final List<CartModel> products = cartitems;
double getPrice() {
double price = 0;
cartitems.forEach((x) {
price += x.price * x.numofitem;
});
return price;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.