该图显示了我的firebase数据库结构:
我要基于指定的doc id用新值更新文档Phonebook
条目,以下代码用新值覆盖所有doc值,而不是进行更新。
insertPhonebookEntry(entry: any) {
if (entry.id) {
this.db.collection('PhonebookEntries').doc(entry.id).set({
PhoneBook: {
Name: entry.name,
PhoneNumber: entry.phonenumber
}
});
}
}
Phonebook
对象是一个数组,其映射值为name
和phonenumber
。
答案 0 :(得分:1)
Use update() instead of set().
this.db.collection('PhonebookEntries').doc(entry.id).update({
PhoneBook: {
Name: entry.name,
PhoneNumber: entry.phonenumber
}
});