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

282
Views
Agregar una declaración if a un Stack Navigatior en React Native

Tengo una pantalla de "chat" a la que se puede acceder desde varias pantallas en mi aplicación React Native. Estoy tratando de agregar una "declaración if" con un "route.params?" al navegador de pila, por lo que llevará al usuario de regreso a la pantalla adecuada, dependiendo de dónde provengan, pero no puedo ejecutar la declaración "if".

A continuación se muestra mi código:

 function MainTabScreen ({ navigation, route }){ const didComeFromNextScreen = () => route.params const didComeFromOtherScreen = () => route.params const chatChecker = ()=>{ if(route.params?.didComeFromNextScreen){ console.log('It came from NextScreen') navigation.navigate('NextScreen') return; } if(route.params?.didComeFromOtherScreen){ console.log('It came from OtherScreen') navigation.navigate('OtherScreen') return; } } <MainTab.Navigator screenOptions ={{ headerStyle:{ backgroundColor:"#fff" , }, gestureEnabled: false, headerTintColor: 'red', headerTitleStyle: { fontWeight: 'bold', fontSize: height*0.023, textAlign: 'center', } }} > <MainTab.Screen name = "NextScreen" component={NextScreen} options= {{ title: '' , headerTintColor: '#fff', headerLeft: null, headerRight: () => ( <Icon.Button name = "message" size={25} backgroundColor= "#fff" onPress={ () => navigation.navigate('ChatScreen',{ didComeFromNextScreen: true })}> </Icon.Button> }} /> <MainTab.Screen name = "ChatScreen" component={ChatScreen} options= {{ title: '' , headerTintColor: '#fff', headerLeft: ()=>( <Icon.Button name = "arrow-left" size={25} backgroundColor= "#fff" onPress={chatChecker}/> ) }} /> <MainTab.Screen name = "OtherScreen" component={OtherScreen} options= {{ title: '' , headerTintColor: '#fff', headerLeft: null, headerRight: () => ( onPress={ () => navigation.navigate('ChatScreen',{ didComeFromOtherScreen: true })}> }} /> </MainTab.Navigator>
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No estoy seguro de por qué hiciste estas funciones, pero las funciones siempre serán verdaderas, por lo que no funcionará.

 const didComeFromNextScreen = () => route.params const didComeFromOtherScreen = () => route.params

actualización para

 const didComeFromNextScreen = route.params const didComeFromOtherScreen = route.params
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!