Typescript 如何对firebase firestore中的节点求和?
我正在制作一个用于订购比萨饼的应用程序 就像你们在图片上看到的一样,我想从每个文档中获取所有名为“ukupno”的键值,并将其求和为最终价格 这是我获取购物车数据的方式:Typescript 如何对firebase firestore中的节点求和?,typescript,firebase,google-cloud-firestore,angular7,Typescript,Firebase,Google Cloud Firestore,Angular7,我正在制作一个用于订购比萨饼的应用程序 就像你们在图片上看到的一样,我想从每个文档中获取所有名为“ukupno”的键值,并将其求和为最终价格 这是我获取购物车数据的方式: this.cartService.getCart(this.user.Uid).subscribe(res => { this.cart = res.map(i => { return { ...i.payload.doc.data(), i
this.cartService.getCart(this.user.Uid).subscribe(res => {
this.cart = res.map(i => {
return {
...i.payload.doc.data(),
id: i.payload.doc.id
};
});
});
}
getCart(uid) {
return this.firestore
.collection("cart/")
.doc(uid)
.collection("/ubaceno")
.snapshotChanges();
}
基本上有两种方法可以汇总集合中所有文档的文档字段值: 1/查询整个集合,循环结果(即),例如使用
forEach()
,并对循环中的所有字段值求和。要使用angularfire2实现这一点,您可能需要使用
但是如果您的收藏中包含大量文档,则这不是非常有效,而且每个文档在您的收藏中需要读取一个文档
2/使用一些为您的所有文档保留最新金额。要实现此方法,每次在ubaceno
集合中创建/修改/删除文档时,都必须更新计数器,向计数器中添加或减去ukupno
字段的值
您可以使用一组云函数在创建/修改/删除计数器时更新计数器,也可以在前端的写入/修改/删除代码中集成计数器更新事务 基本上有两种方法可以汇总集合中所有文档的文档字段值: 1/查询整个集合,循环结果(即),例如使用
forEach()
,并对循环中的所有字段值求和。要使用angularfire2实现这一点,您可能需要使用
但是如果您的收藏中包含大量文档,则这不是非常有效,而且每个文档在您的收藏中需要读取一个文档
2/使用一些为您的所有文档保留最新金额。要实现此方法,每次在ubaceno
集合中创建/修改/删除文档时,都必须更新计数器,向计数器中添加或减去ukupno
字段的值
您可以使用一组云函数在创建/修改/删除计数器时更新计数器,也可以在前端的写入/修改/删除代码中集成计数器更新事务