Estoy tratando de agregar a un objeto en firestore, el problema es que el nuevo objeto sobrescribe los objetos anteriores, por lo que en mi caso solo queda un objeto, pongo una imagen de la base de datos y también la lógica que estoy usando.
const docRef = doc(db, 'items', _authContext.currentUser.uid); await updateDoc(docRef, { itemlist: { [diffrent key each time]: arrayUnion({ name: 'item whatever')}], }, }), { merge: true }; };Debe utilizar la notación de puntos al actualizar un campo anidado. Además updateDoc() no toma las opciones con la propiedad de combinación (es setDoc() quien lo hace). Intente refactorizar el código como se muestra a continuación:
const docRef = doc(db, 'items', _authContext.currentUser.uid); const differentKey = "someKey"; await updateDoc(docRef, { [`itemList.${differentKey}`]: arrayUnion({ name: "item whatever" }), });