En firestore v8 (web sdk) lo estaba haciendo de la siguiente manera:
firestore.ref().collection("genId").doc().id Pero no puedo descifrar la sintaxis correcta para v9 ya que collection ya no tiene el método doc() .
Cualquier sugerencia es muy apreciada.
De la documentación de Firebase sobre cómo agregar un documento :
En algunos casos, puede ser útil crear una referencia de documento con una identificación generada automáticamente y luego usar la referencia más adelante. Para este caso de uso, puede llamar a
doc():import { collection, doc, setDoc } from "firebase/firestore"; // Add a new document with a generated id const newCityRef = doc(collection(db, "cities")); // later... await setDoc(newCityRef, data);
En lugar de escribir en la referencia como lo hace la muestra, también puede obtener la ID de la referencia del documento con:
console.log(newCityRef.id);Puede llamar a collection para obtener un objeto CollectionReference y usar esto para llamar a doc .
Colección: https://firebase.google.com/docs/reference/js/firestore_.md#collection
Documento: https://firebase.google.com/docs/reference/js/firestore_.md#doc_2
const ref = collection(firestore, "genId") const id = doc(collection)Según la referencia de la API:
Si no se especifica una ruta, se usará una ID única generada automáticamente para la DocumentReference devuelta.