javascript - 在 Firestore 中更新对象中的字段?

标签 javascript firebase google-cloud-firestore

这是文档中提供的示例,用于更新 firebase 中嵌套对象中的字段。

var frankDocRef = db.collection("users").doc("frank");
frankDocRef.set({
name: "Frank",
favorites: { food: "Pizza", color: "Blue", subject: "recess" },
age: 12
});

// To update age and favorite color:
db.collection("users").doc("frank").update({
"age": 13,
"favorites.color": "Red"
})
.then(function() {
console.log("Document successfully updated!");
});

我不想更新收藏夹,而是想添加到收藏夹,有人会指出正确的方向吗?

假设我想

firebase: "Help"
the the resulting favourites object should be
favorites: { food: "Pizza", color: "Blue", subject: "recess", firebase: "Help" },

我将 set 与点运算一起使用,但它会覆盖所有内容。

最佳答案

要向集合(Javascript 对象)添加条目,请使用 DocumentReference.update:

db.collection("users").doc("frank").update({
  "favorites.firebase": "Help")}
})

会导致

favorites: { food: "Pizza", color: "Blue", subject: "recess", firebase: "Help" }

关于javascript - 在 Firestore 中更新对象中的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48046672/

相关文章:

javascript - 在javascript中使用通配符从字符串中获取子字符串

javascript - 使用 JavaScript/jQuery 更改 SPAN 中的错误消息

firebase - flutter firestore检索不同页面的不同数据

reactjs - 调用 firestore collection() 在博览会上不起作用

javascript - 为什么我应该使用 JQuery Ajax 模板

android - startActivity 在 fcm 中的 onMessageReceived 中不起作用

javascript - firestore 安全规则 resource.data 是空对象

android - Firestore 分页 : StartAfter query with DocumentSnapshot not working

firebase - 一个查询中按两个字段排序的 Firestore

javascript - 使用自定义标志图标实现 Google 翻译