Outra diferença (estendendo a resposta de Scarygami) entre "definir com mesclagem" e "atualizar" é ao trabalhar com valores aninhados.
se você tiver um documento estruturado assim:
{
"friends": {
"friend-uid-1": true,
"friend-uid-2": true,
}
}
e quero adicionar {"friend-uid-3" : true}
usando isto:
db.collection('users').doc('random-id').set({
"friends": {
"friend-uid-3": true
}
},{merge:true})
resultará nestes dados:
{
"friends": {
"friend-uid-1": true,
"friend-uid-2": true,
"friend-uid-3": true
}
}
no entanto, update
usando isto:
db.collection('users').doc('random-id').update({
"friends": {
"friend-uid-3": true
}
})
resultará nestes dados:
`{
"friends": {
"friend-uid-3": true
}
}`
create
método na API?