Estoy recuperando un determinado documento de la colección de products y quería compararlo con otra colección de categories
Documento específico de la colección de Product :
Colección de Category :
Puede haber algunos documentos que no tengan options , podrían estar determinadas por el value del campo. Si tiene una cadena yes , entonces tiene options . De lo contrario, será un no .
Ya puedo mostrar el documento específico de la colección de product . Usé el map para mostrar los productos.
Dentro de ese mapa, quería tener una declaración condicional que mostrara todas las options si la categoría del producto actual coincide con cualquiera de los documentos en las categories de la colección que tiene options .
Por ejemplo, el producto actual es Shirt con una categoría de SL . En la colección de category , la SL sí tiene opciones.
Y si el producto actual no tiene ninguna options , simplemente mostrará "Sin opciones".
Lo que hice:
{product && product.map((prod, index) => ( <li>{prod.cat}</li> <li>{prod.prodName}</li> //if the current product matches with any of the document in the collection category, then show the options, else show "no options" {category && category.map((c, index) => ( <> <li>{c.cat}</li> {c.cat === prod.cat ? <>1</> : <>2</>} </> ))} ))}¿Cómo puedo hacer esto?
Parece que ha creado un esquema basado en relaciones y le gustaría realizar una combinación externa mediante declaraciones condicionales. La función de mapa no admite declaraciones condicionales ya que su función es transformar entidades. Como se compartió, Firestore no admite la unión en colecciones, ya que es un tipo de base de datos de almacenamiento de documentos.
Para ayudarlo a comenzar, Java Script permite crear una declaración if en el cuerpo de la función de mapa, para obtener más detalles, consulte
La estrategia alternativa para usted sería mantener los datos dentro de la estructura principal (producto) y luego obtener todos los datos mediante una sola solicitud y presentarlos en consecuencia o tal vez desee escribir código para leer cada documento en cada colección que necesitaría una comparación. , y también realizar esa comparación con los documentos en memoria. A continuación, comparto algunos recursos que pueden ser útiles para comprender cómo se deben estructurar los datos en Firestore.