gpt4 book ai didi

javascript - 如何增加 Firestore 数组中的 map 值

转载 作者:行者123 更新时间:2023-12-04 01:36:01 25 4
gpt4 key购买 nike

我有一个 firestore firebase 数据库,其中我有一个集合 users
集合中有一个数组,数组中有一个映射
在 map 中有一个字段 qty.. 我想增加那个 qty 值..

image

使用增量没有帮助,因为数量在数组索引内

    db.collection("users").doc(checkId).update({
myCart: firebase.firestore.FieldValue.arrayUnion({
qty: firebase.firestore.FieldValue.increment(1),

}),

这是错误输出=>
未捕获( promise )FirebaseError:使用无效数据调用的函数 FieldValue.arrayUnion()。 FieldValue.increment() 只能与 update() 和 set() 一起使用

最佳答案

您要更新的字段嵌入在数组中。在这种情况下,您不能使用 FieldValue.increment() ,因为不可能将数组元素调用为命名字段值。

相反,您需要做的是读取整个文档,修改内存中的字段以包含您想要的内容,然后将字段更新回文档中。如果您需要更新为原子,还可以考虑为此使用事务。

(如果该字段不是数组的一部分,您可以使用 FieldValue.incrememnt() 。)

关于javascript - 如何增加 Firestore 数组中的 map 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58307204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com