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

287
Views
React Native: cargue una matriz de imágenes en el almacenamiento de Firebase

Estoy tratando de cargar una matriz de URI de imágenes desde el caché de la aplicación al almacenamiento de Firebase.

Una vez que las imágenes se han cargado en el almacenamiento de firebase, se llama a una devolución de llamada para obtener la URL de descarga del archivo y se crea un documento en firestore para el registro. Este registro contiene la primera imagen. Si se han tomado varias imágenes, en la segunda foto, el documento de Firestore se actualiza y las nuevas imágenes se agregan al objeto de imagen (matriz).

Ejecutar este código ha tenido 3 resultados:

  1. 1 imagen cargada
  2. todas las imágenes cargadas
  3. no hay imágenes cargadas, la aplicación falla

¿Alguna idea de lo que estoy haciendo incorrectamente?

 //Uploads Images const uploadImages = async () => { for (const image of images) { const response = await fetch(image); const blob = await response.blob(); const storageRef = firebase.storage().ref(REDACTED + ".jpg"); const task = storageRef.put(blob); setLoading(true); task.on('state_changed', taskSnapshot => { console.log(`${taskSnapshot.bytesTransferred} transferred out of ${taskSnapshot.totalBytes}`); }); await task.then(() => { const dlURL = storageRef.getDownloadURL().then((url) => { console.log("Download URL: ", url); updateFirestore(url); }).catch((error) => { console.log("Error getting download url: ", error) }); setLoading(false); console.log("Image Successfully Uploaded"); }).catch((error) => { console.error("Error Uploading Images: ", error); setLoading(false); }); } } //Updates table in Firestore const updateFirestore = (dlURL) => { console.log("PIC CODE: ", picCode); if (picCode === 0) { console.log("Creating Document..."); //Create dbRef.add({ ... images: [ dlURL ] }).then((result) => { console.log(result); setDocID(result.id); //picCode++; }).catch((error) => { console.error(error) }); } else { console.log("Updating Document...", docID); //Update dbRef.doc(docID).update({ images: firebase.firestore.FieldValue.arrayUnion(dlURL) }).then((result) => { console.log(result); //picCode++; }).catch((error) => { console.error(error) }); } picCode++; };
 Log Output: Image: file:///var/mobile/Containers/Data/Application/483FC505-968F-4850-87E3-8CC6DD824A53/Library/Caches/ExponentExperienceData/%2540arcade336%252Fempireportal/Camera/A68C3715-DD20-41C3-9711-E1C80E7B31A3.jpg 0 transferred out of 3777563 262144 transferred out of 3777563 786432 transferred out of 3777563 1835008 transferred out of 3777563
about 4 years ago · Juan Pablo Isaza
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!