如何解决Firebase Firestore:如何更新或访问和更新地图、数组、文档、集合中的字段值
抱歉标题太长。在视觉上更精确,我想在付款后更新股票价值。但是,在查询整个文档(例如,带有标题运动鞋的选定文档)后,我陷入了困境。有没有办法实际查询和更新例如 Timberlands 股票价值为其值 -1。或者您是否必须从整个文档中获取所有数据。然后在javascript中修改想要的部分并更新整个文档?
这是我目前想出的解决方案的一小部分。然而,这种方法似乎非常低效,让我很受伤。
const updateFirebaseStock = (orders) => {
orders.forEach( async (order) => {
try {
collRef = db.doc(`collections/${order.collectionid}`);
doc = await collRef.get();
data = doc.data();
//Here:const newItems = data.items.map(if it's corr name,update value,else just return object),results in desired new Array of objects.
//Then Update entire document by collRef.update({items: newItems})
} catch (error) {
console.error(error)
};
});
}
解决方法
您根本不需要为此获取文档,您所要做的就是使用 FieldValue.increment()
,使用您的代码作为起点,它可能如下所示:
collRef = db.doc(`collections/${order.collectionid}`);
collRef.update({
Price: firebase.firestore.FieldValue.increment(-1)
});
您可以使用该函数对任何数值进行递增/递减。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。