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

188
Views
El addListener de navegación no se ejecuta después de la acción de espera

Estoy escuchando el evento de enfoque en la navegación en React native y usando @react-navigation^5.xx en componentDidMount . Si solo se escribe esta acción, entonces funciona bien y ejecuta el código dentro de ella.

Pero en mi caso, estoy obteniendo datos de la API (también lo intenté burlándome de la espera) y uso la espera antes de agregar el oyente de enfoque. No es ser escuchado por primera vez. Pero cuando voy a otra página y vuelvo, comienza a funcionar/ejecutarse.

Aquí está mi fragmento de código.

 async componentDidMount() { await new Promise(resolve => setTimeout(resolve, 3000)); // 3 sec navigation.addListener('focus', async (data) => { console.log('This block not works for first time when I come on page.') }) }

Editar: incluso si elimino la espera y pongo todo el bloque en tiempo de espera, también deja de ejecutar la devolución de llamada de enfoque.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No creo que puedas usar async en el ciclo de vida, prueba esto en su lugar:

 componentDidMount() { const getData = async (params) => { await new Promise(resolve => setTimeout(resolve, 3000)); // 3 sec navigation.addListener('focus', async (data) => { console.log('This block not works for first time when I come on page.') }) } getData() }
about 4 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 Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!