firebase 有没有一种方法可以更新firestore中的嵌套对象而不覆盖其他值?

dkqlctbz  于 2023-04-22  发布在  其他
关注(0)|答案(2)|浏览(142)

我是网络开发的新手,所以如果这个问题充满了不准确之处,我非常抱歉。
我的firestore数据库是这样组成的:

有没有一种方法可以让我更新一个特定卡片下的bookname(例如card1)
现在我的方法是使用以下函数:

但是当我执行IssueBook()函数时,我在控制台上看到一个错误:

据我所知,card1字段确实有两个可以更新的字段,那么控制台消息意味着什么呢?
感谢您的评分

cs7cruho

cs7cruho1#

看起来你在LibCard下有一个嵌套的字段。要更新嵌套对象中的字段,你可以使用点表示法:

updateDoc(doc(db, "users", docid), {
    "LibCard.card1.bookname": "Coraline"
});
dced5bon

dced5bon2#

在我的例子中,category是一个数组,它必须是文档中现有嵌套对象的确切名称。

const userData = doc(db, "users", userUid);
            await updateDoc(userData, {
              category,
            });

React Native

上的Console.log类别数组
Firebase文档.

相关问题