Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

140
Visualizações
Cómo consultar y actualizar en firestore v9
async booleanFunction(email: string, bool: boolean){ console.log('here') const db = getFirestore(); const q = query(collection(db, "users"), where("email", "==", email), limit(1)); const querySnapshot = await getDocs(q); await updateDoc(querySnapshot, { disabled: !bool }); }

Aquí está mi función que toma el correo electrónico y un valor bool (esto debe actualizarse), no tengo el _id que proporciona firestore, así que necesito alguna alternativa para consultar datos y actualizarlos

Este es el error que aparece

 Argument of type 'QuerySnapshot<DocumentData>' is not assignable to parameter of type 'DocumentReference<{ disabled: boolean; }>'.

Al tipo 'QuerySnapshot' le faltan las siguientes propiedades del tipo 'DocumentReference<{ disabled: boolean; }>': convertidor, tipo, firestore, id y 3 más.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El problema está aquí:

 await updateDoc(querySnapshot, { disabled: !bool });

Está intentando llamar a updateDoc en un QuerySnapshot , lo cual no es posible y nunca ha sido posible en v8 tampoco.

Solo puede llamar a updateDoc en un DocumentReference . Por lo tanto, deberá recorrer los documentos en QuerySnapshot y llamar a updateDoc en cada uno de ellos:

 await Promise.all(() => querySnapshot.docs.map((doc) => updateDoc(doc.ref, { disabled: !bool }) ) )
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda