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

202
Visualizações
¿Cómo puedo obtener datos de firebase para cada elemento en una Flatlist?

Tengo una lista plana que recibe eventIds como datos. En cada llamada de renderItem, quiero encontrar el objeto de evento correspondiente a cada eventId en firebase y representar estos datos. (Por ejemplo, título o imagen de este evento)

Esta es la función para obtener un solo evento de firestore basado en eventId:

 export async function getSingleEventDataFireStore(eventId) { const db = firebase.firestore(); const eventFirestoreDoc = db.collection("events").doc(eventId); const doc = await eventFirestoreDoc.get(); if (!doc.exists) { console.log("No such Event!"); } else { console.log("Event data fetched!"); return await doc.data(); } }

aquí es donde se muestra la lista plana:

 const EventScreen = () => { const [event, setEvent] = useState([]); const [eventFetched, setEventFetched] = useState(false); const eventIds = [{id:'1', eventId: 'jaelfmk130'}, {id:'2', eventId: '1jlk335n1'}] const renderItem = ({ item }) => { if (!eventFetched) { firestore.getSingleEventDataFireStore(item.eventId).then((eventItem) => { setEvent(eventItem); setEventFetched(true); }); } setEventFetched(false) return ( <View><Text>{event.title}</Text></View> ) } return ( <View> <FlatList data={eventIds} keyExtractor={(item) => item.id} renderItem={renderItem} /> </View> ) }

Esto termina en un bucle infinito, porque configuré eventFetched en falso nuevamente durante renderItem. De lo contrario, si elimino setEventFetched (falso), solo representa un elemento.

¿Cómo puedo establecer eventFetched en falso después de la representación de cada elemento sin terminar en un bucle?

about 4 years ago · Juan Pablo Isaza
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