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

120
Views
Escuche actualizaciones en tiempo real de un documento dentro de una matriz en un objeto con Firestore (reaccionar)

Gracias de antemano por tu tiempo.

Estoy tratando de escuchar actualizaciones en tiempo real de un documento que vive en el fondo después de algunos niveles anidados.

¿Es esto posible o debería escuchar todos los cambios del documento de primer nivel y filtrar en el cliente?

Así es como se ve la estructura de mi base de datos:

 articles: { 'article-one': { author: "jane doe", status: "stock", similar: [ {articleId: "article20", type: "sold"}, {articleId: "article21", type: "stock"}, ... ] } }

Estoy tratando de escuchar actualizaciones en tiempo real sobre el artículo con 'articleId' de "article20" dentro de la matriz SIMILAR.

Esto es lo que estoy intentando:

 const myQuery = query(collection(db, "articles", article-one, "similar"), where("articleId", "==", "article20")); const unsub = onSnapshot(myQuery, (querySnapshot) => { const selectedArticles = [] querySnapshot.forEach((doc) => { selectedArticles.push(doc.data()) }) console.log(selectedArticles); //output: [] })
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Si está intentando consultar elementos de una matriz, eso no es posible en este momento. Tendrías que hacer cualquiera de los siguientes:

  1. Obtenga los documentos del artículo y filtre el campo de matriz usando Javascript como se muestra a continuación:
 const myQuery = doc(db, "articles", article-one); const unsub = onSnapshot(myQuery, (docSnapshot) => { const similar = docSnapshot.data().similar const selectedArticles = similar.filter(a => a.articleId === "article20") console.log(selectedArticles); })
  1. Cree una subcolección "similar" y luego use la consulta existente. Eso debería devolver documentos de todos los artículos similares con articleId . de artículo dado.
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!