У меня есть объекты, которые выглядят примерно так:
{
...
someArray: [
{
id: 1548,
amount: 153,
done: 0
}
]
...
}
Поскольку эти объекты могут стать достаточно большими, я не могу просто использовать set
каждый раз, когда обновляю их, так как отправляю 100 КБ каждый разМне нужно обновить документ, а не вариант.
Чтобы решить эту проблему, я решил использовать update
с так называемой «нотацией точек», пример использования:
update({
'a.b.c': true
})
Источник: Разница между набором с {merge: true} и обновлением
Поэтому я решил попробовать и это сработало как "обычные "вложенные поля, но я не могу найти, как я могу сделать это для объектов, которые вложены в массивы.
Я пытался это так:
update({
'a.someArray.0.done': 153
})
update({
'a.someArray[0].done': 153
})
Но обаиз них просто стерли объект и заменили его патчем, что означает, что нотация точек не была распознана должным образом.
Как я могу решить эту проблему?Есть ли решение для такого подхода или я должен просто реорганизовать его, используя подколлекцию?