He podido solucionar mi problema ahora gracias a la respuesta de Stephan.
Tengo un pequeño problema con el funcionamiento de la navegación en React Native .
Básicamente, lo que estoy tratando de hacer es esto: \
Mientras estoy en la pila de inicio, navegue hasta la pila de SubFeed desde la función Feed llamada en Home .
Aquí está mi código
import Feed from './Feed' function Home({ navigation }) { return ( <ScrollView> <Feed/> </ScrollView>Inicio.js
function Feed({ navigation }) { return ( <View> <Button title="nav1" onPress={() => navigation.navigate('SubFeed')}/> <Button title="nav2" onPress={() => navigation.navigate('Home', {screen: 'SubFeed'})}/> </View>Feed.js
En mi App.js creo mis pilas así:
<NavigationContainer> <StatusBar backgroundColor="#ffa31a" /> <Stack.Navigator initialRouteName="Project"> <Stack.Screen name="Project" component={Home}/> <Stack.Screen name="Feed" component={Feed} /> <Stack.Screen name="SubFeed" component={SubFeed} /> </Stack.Navigator> </NavigationContainer>Aplicación.js
Descubrí que en otro archivo donde uso la navegación no necesito importar nada para que la navegación funcione siempre que tenga {navegación} en mi función.
El problema es que cada vez que trato de presionar cualquiera de los botones me sigue dando el mismo error:
TypeError: undefined no es un objeto (evaluando 'navigation.navigate') \
Cuando busco una respuesta, sigo viendo cosas sobre pantallas , pero parece que no funciona en mi caso.
Si tienes alguna sugerencia o mejor aún la respuesta a mi problema te lo agradecería mucho.
En su código, el componente Feed no conoce la propiedad de navegación. Por lo tanto, puede pasarlo como un accesorio desde el Inicio principal o puede usar react-navigation-hooks y usar const { navigate } = useNavigation(); dentro del componente de alimentación.