const manuallyRejected = async () => {
if (ownManualStatus !== 'rejected') {
updateDoc(doc(db, 'pairRequests', buddyData.uid), {
manual: 'rejected',
blocked: {
[user.uid]: Date.now()
}
} , { merge: true });
updateDoc(doc(db, 'pairRequests', user.uid), {
blocked: {
[buddyData.uid]: Date.now()
}
} ,{ merge: true });
}
setPairFound(false);
setBuddyData(null);
};
有一个名为blocked的Map,它包含一个字段和useruid值以及被阻止用户的时间戳。所以我试图做的是添加一个新的字段,但updateDoc覆盖了所有以前的字段。谁能告诉我怎么做?我尝试使用FieldPath,但这是给一些错误,我不知道我是否做得对或不。这是一个至少还能用的代码
1条答案
按热度按时间wdebmtf21#
updateDoc
not有一个合并选项。要更新
map
中的字段,可以使用字段路径。这将添加新字段或覆盖同名字段,但不会 * 覆盖其他现有字段。