• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

169
Views
Is there a way to prevent getting photos randomly on Firebase Storage?

I have some folders on Firebase Storage. Every folder includes 1_org_zoom.jpg file. I can get those photos, but not in the right array order. I want to get those photos in an order like the photo below, but photos are shown randomly. I tried for loop and forEach, but didn't work. Is there any way to get these photos in an order?

  useEffect(() => {
  /* for(let i = 0; i<products.length; i++){
     const imgRef = ref(storage, imgFolderRef[i]);
     console.log(imgRef);
     getDownloadURL(imgRef)
       .then((url) => {
         console.log(url);
       })
   }
*/
   imgFolderRef.forEach((imgFolder) => {
     console.log(imgFolder);
     getDownloadURL(ref(storage, imgFolder))
       .then((url) => {
           setExArr((oldArr) => [...oldArr, url])
       })
   })
  
  }, [products]);

Array name is imgFolderRef.

enter image description here

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

The whole point of asynchronous functions is not to block the execution of the script so that several operations can run concurrently.
In your case getDownloadURL and setExArr are asynchronous, as a consequence you have no guaranty concerning the ordering of the images. What you can do is to explicitly sort the array:

setExArr((oldArr) => [...oldArr, url].sort())
almost 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error