反应本机导航-navigation.navigate不是函数

时间:2020-04-10 18:35:00

标签: react-native react-native-navigation

我尝试制作我的应用程序并使用React的导航,当我尝试制作按钮时,不要像这样onPress={() => navigation.navigate('Connect')更改屏幕,而当我单击按钮时,我会遇到此错误:{{1} }

但是我在主屏幕上使用了相同的按钮,所以可以使用!也许我的道具导航在其他屏幕“恭喜”上还没有准备好?

我的代码:

Congratulations.js-

navigation.navigate is not a function (in 'navigation.navigate('Connect'), 'navigation.navigate is undefined'

我的Navigation.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>
); }

我在组件JoinUsForm.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>

如果需要,您可以查看我的仓库:https://github.com/teddyboirin/myparty 谢谢!

2 个答案:

答案 0 :(得分:0)

我已经在博览会上成功运行了您的项目。 我想您忘记了在iOS文件夹上运行pod install:

cd ios && pod install

答案 1 :(得分:0)

破坏性的道具是我遇到问题的原因!谢谢!