Я пытаюсь сделать свое приложение и использовать навигацию React, и когда я пытаюсь сделать кнопку, я не изменяю свой экран следующим образом: onPress={() => navigation.navigate('Connect')
, и когда я нажимаю на мою кнопку, у меня появляется эта ошибка: navigation.navigate is not a function (in 'navigation.navigate('Connect'), 'navigation.navigate is undefined'
Однако я использовал ту же кнопку на домашнем экране, и она работает! может быть, навигация по моему реквизиту не готова на другом экране 'Поздравления'?
мой код:
Поздравления. js -
export default function Congratulations({navigation}, props) {
return (
<View style={styles.isSubmit}>
<Logo width={300} height={100} />
<Text style={styles.congratulations}>Félicitations {props.firstName + ' ' + props.lastName}, tu peux désormais organiser tes évènements sur l'application ! </Text>
<View style={{marginTop:30}}>
<TouchableOpacity
style={styles.buttonShadowConnect}
onPress={() => navigation.navigate('Connect')}>
<LinearGradient style={styles.button} colors={['#FD867E', '#FD7EAC']} start={[0, 0.65]}
end={[0.70, 1]}>
<Text style={styles.textButton}>Connexion</Text>
</LinearGradient>
</TouchableOpacity>
</View>
</View>
); }
моя навигация. js:
<NavigationContainer theme={Theme}>
<Drawer.Navigator initialRouteName="Home" drawerType={"slide"} options={options}>
<Drawer.Screen name="Home" component={Home} options={{ title: "Accueil" }}/>
<Drawer.Screen name="JoinUs" component={JoinUs} options={{ title: "Nous rejoindre" }}/>
<Drawer.Screen name="Connect" component={Connect} options={{ title: "Se connecter" }}/>
</Drawer.Navigator>
</NavigationContainer>
и я вызываю свой компонент Поздравления в моем компоненте JoinUsForm. js вот так:
<Congratulations firstName={getFirstName} lastName={getLastName} navigation={navigation}></Congratulations>
вы можете проверить мой репо, если хотите: https://github.com/teddyboirin/myparty спасибо!