Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

386
Views
¿Cuál es el equivalente de CollectionReference.doc() para la versión 9 del SDK de Firebase JS?

Estoy tratando de agregar un nuevo documento en una transacción de Firestore con la versión 9 del SDK de Firebase JS. En la versión 8, podemos usar

 const newDocRef = db.collection('coll').doc();

para obtener una DocumentReference a un documento que aún no existe, y luego hacer una

 transaction.set(newDocRef, { ... });

para establecer el documento en una transacción. ¿Cómo haríamos lo mismo en la versión 9? La nueva clase CollectionReference no parece tener un método doc() como en la versión 8 . ¡Gracias!

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Hay una función doc() para crear una DocumentReference y luego runTransaction() para ejecutar una transacción. Intenta refactorizar el código de esta manera:

 import { getFirestore, doc, runTransaction } from "firebase/firestore" const newDocRef = doc(db, "col_name", "doc_id"); await runTransaction(db, async (transaction) => { // ... transaction.set(newDocRef, { ...data }); });

La documentación tiene ejemplos con la sintaxis funcional y con espacio de nombres. Consulte también esta respuesta para obtener una mejor explicación de las diferencias de sintaxis en V8 y V9:

Firestore: ¿Cuál es el patrón para agregar nuevos datos en Web v9?

about 4 years ago · Juan Pablo Isaza Report

0

Encontré la respuesta aquí . Esto funciona para mí:

 const newDocRef = doc(collection(db, "coll")); transaction.set(newDocRef, { ... });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!