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

71
Views
React Native cómo ejecutar la función 3 veces y luego verificar las condiciones

Tengo un proceso en mi useEffect Hook. Necesito que este proceso se ejecute 3 veces y luego se detenga. Además, cada vez que cambia la variable getData (cadena de datos de api), necesito que el proceso se repita (lo que significa ejecutar 3 veces). El código actual funciona algunas veces y otras continúa sin parar. Incluso cuando getData no cambia. Parece que mi declaración if no responde. No veo la impresión de console.log('should stop'). He comprobado para ver si el valor en la instrucción if es un número y lo es. Simplemente no está ejecutando la condición.

 // getData is string that will change from api // use to stop the setInterval const getImageCounter = useRef(); useEffect(() => { let source = axios.CancelToken.source(); let imageCount = 0; getImageCounter.current = setInterval(() => { if (imageCount >= 3) { // stop setInterval when conditions are meet clearInterval(getImageCounter.current); console.info('should stop'); } imageCount++; console.log('rendering', imageCount); axios .get(`${network}/Image`, { cancelToken: source.token, }) .then(imageResponse => { const imageFilter = imageResponse.data.icon.substring(0, imageResponse.data.icon.lastIndexOf('=') + 1); //prettier-ignore setBase64Image(imageFilter); }) .catch(function (e) { if (axios.isCancel(e)) { console.log(`request cancelled:${e.message}`); } else { console.log( 'another error happened fetching overlays:' + e.message, ); } }); }, 3000); return function () { source.cancel('Cancelling in cleanup'); }; // eslint-disable-next-line react-hooks/exhaustive-deps }, [getData]);
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!