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

302
Views
React JS: ¿Cómo pasar una matriz de firebase en el parámetro de consulta?

Estoy usando selección múltiple en uno de mis parámetros y me gustaría saber cómo consultar esos parámetros como, por ejemplo, si

Quiero consultar parámetros que tiene 1 (no importa si hay otros valores)

El valor uno tiene: 1, 2, 3 El valor dos tiene: 5, 1, 6 El valor tres tiene: 5, 6, 9

Solo debe traer Valor uno y dos

Sé que puedes hacer algo como (para valores que no son de matriz):

 const librosRef = db.collection('libros'); const queryRef = librosRef.where('grado', '==', '4° Grado');

y traería todos los documentos de esa colección que tiene 4° Grado pero si trato de hacer eso usando una multiselección no trae nada.

Esto es lo que estoy intentando (no funciona para la matriz, que es lo que estoy tratando de averiguar):

 const productosRef = db.collection('productosAIB'); const queryRef = productosRef.where('grado', '==', '4° Grado'); useEffect(() => { queryRef.orderBy("precio") .get() .then((snapshot) => { const tempData = []; snapshot.forEach((doc) => { const data = doc.data(); tempData.push(data); }); setProductos(tempData); }); }, []);

Ejemplo de cómo se almacena en Firebase:

ingrese la descripción de la imagen aquí

Y así se ve en la tabla (sin la consulta porque si agrego la consulta no muestra nada)

ingrese la descripción de la imagen aquí

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

0

Parece que está intentando consultar documentos en función de la existencia de un valor en una matriz. Estas se denominan consultas de membresía de matriz en Firestore.

Para esto, usaría array-contains para hacer coincidir un solo campo en una matriz, y array-contains-any para hacer coincidir cualquier valor de una matriz.

Para consultar en función de un valor único en la matriz

 const queryRef = productosRef.where('grado', 'array-contains', '4° Grado');

múltiples valores pasados como una matriz

 const queryRef = productosRef.where('grado', 'array-contains-any', ['4° Grado', 'next array element']);

NOTA: array-contains-any puede admitir hasta 10 valores de comparación.

Para obtener más información sobre las consultas de membresía de matriz, puede ver la documentación aquí

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!