Tengo problemas para eliminar en firestore
aquí está mi borrado
var chatId = route.params.number; // +639266825843 var docRef = firestore().collection('ChatRoom').doc(chatId).collection('messages'); docRef.doc(chatId).delete();pero cada vez que intento eliminar no pasa nada. No hay ningún error en absoluto.
así es como configuro esa colección
firestore().collection('ChatRoom') .doc(id) .collection('messages') .add({...myMsg, createdAt:firestore.FieldValue.serverTimestamp()})Si desea eliminar todos los documentos de la (sub)colección de messages , debe consultar la colección y eliminar cada documento, por ejemplo, usando Promise.all() o usando una escritura por lotes (que solo contiene eliminaciones)
var chatId = route.params.number; // +639266825843 var colRef = firestore() .collection('ChatRoom') .doc(chatId) .collection('messages'); colRef.get().then((querySnapshot) => { Promise.all(querySnapshot.docs.map((d) => d.ref.delete())); }); La propiedad docs de QuerySnapshot devuelve una matriz de QueryDocumentSnapshot s.
Además, observe cómo su documento +639266825843 se muestra en cursiva : esto significa, en la consola, que este documento solo está presente como "contenedor" de una o más subcolección(es) pero que no es un documento "genuino". No existe, porque nunca lo creaste, solo creaste documentos en una de sus subcolecciones. Más detalle aquí .